How to use JavaScript to generate random quotes on a website?












-2














Below is the code I currently have. The problem I'm having is that where the quotes are supposed to be shown on the web page, it is just saying "undefined". I honestly am not sure where the problem is coming from.






var randomQ = randomInt(0, 10);

function randomInt(lowest, size) {
Math.floor(Math.random() * size) + lowest;
return randomQ;
}

var quoteElem = document.getElementsByTagName("quote")[0];

quoteElem.innerHTML = getQuote(randomQ);

function getQuote(n) {
var quotes = [
"It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
"I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
"Silly things do cease to be silly if they are done by sensible people in an impudent way.",
"Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
"Life seems but a quick succession of busy nothings.",
"Our scars make us know that our past was for real.",
"I cannot speak well enough to be unintelligible.",
"One cannot be always laughing at a man without now and then stumbling on something witty.",
"Men were put into the world to teach women the law of compromise.",
"The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
];

return quotes[n];
}












share|improve this question




















  • 2




    post your html here...
    – SakoBu
    Nov 12 at 1:56










  • Definitely need your html to be able to help..
    – Smokey Dawson
    Nov 12 at 1:57
















-2














Below is the code I currently have. The problem I'm having is that where the quotes are supposed to be shown on the web page, it is just saying "undefined". I honestly am not sure where the problem is coming from.






var randomQ = randomInt(0, 10);

function randomInt(lowest, size) {
Math.floor(Math.random() * size) + lowest;
return randomQ;
}

var quoteElem = document.getElementsByTagName("quote")[0];

quoteElem.innerHTML = getQuote(randomQ);

function getQuote(n) {
var quotes = [
"It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
"I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
"Silly things do cease to be silly if they are done by sensible people in an impudent way.",
"Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
"Life seems but a quick succession of busy nothings.",
"Our scars make us know that our past was for real.",
"I cannot speak well enough to be unintelligible.",
"One cannot be always laughing at a man without now and then stumbling on something witty.",
"Men were put into the world to teach women the law of compromise.",
"The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
];

return quotes[n];
}












share|improve this question




















  • 2




    post your html here...
    – SakoBu
    Nov 12 at 1:56










  • Definitely need your html to be able to help..
    – Smokey Dawson
    Nov 12 at 1:57














-2












-2








-2







Below is the code I currently have. The problem I'm having is that where the quotes are supposed to be shown on the web page, it is just saying "undefined". I honestly am not sure where the problem is coming from.






var randomQ = randomInt(0, 10);

function randomInt(lowest, size) {
Math.floor(Math.random() * size) + lowest;
return randomQ;
}

var quoteElem = document.getElementsByTagName("quote")[0];

quoteElem.innerHTML = getQuote(randomQ);

function getQuote(n) {
var quotes = [
"It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
"I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
"Silly things do cease to be silly if they are done by sensible people in an impudent way.",
"Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
"Life seems but a quick succession of busy nothings.",
"Our scars make us know that our past was for real.",
"I cannot speak well enough to be unintelligible.",
"One cannot be always laughing at a man without now and then stumbling on something witty.",
"Men were put into the world to teach women the law of compromise.",
"The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
];

return quotes[n];
}












share|improve this question















Below is the code I currently have. The problem I'm having is that where the quotes are supposed to be shown on the web page, it is just saying "undefined". I honestly am not sure where the problem is coming from.






var randomQ = randomInt(0, 10);

function randomInt(lowest, size) {
Math.floor(Math.random() * size) + lowest;
return randomQ;
}

var quoteElem = document.getElementsByTagName("quote")[0];

quoteElem.innerHTML = getQuote(randomQ);

function getQuote(n) {
var quotes = [
"It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
"I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
"Silly things do cease to be silly if they are done by sensible people in an impudent way.",
"Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
"Life seems but a quick succession of busy nothings.",
"Our scars make us know that our past was for real.",
"I cannot speak well enough to be unintelligible.",
"One cannot be always laughing at a man without now and then stumbling on something witty.",
"Men were put into the world to teach women the law of compromise.",
"The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
];

return quotes[n];
}








var randomQ = randomInt(0, 10);

function randomInt(lowest, size) {
Math.floor(Math.random() * size) + lowest;
return randomQ;
}

var quoteElem = document.getElementsByTagName("quote")[0];

quoteElem.innerHTML = getQuote(randomQ);

function getQuote(n) {
var quotes = [
"It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
"I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
"Silly things do cease to be silly if they are done by sensible people in an impudent way.",
"Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
"Life seems but a quick succession of busy nothings.",
"Our scars make us know that our past was for real.",
"I cannot speak well enough to be unintelligible.",
"One cannot be always laughing at a man without now and then stumbling on something witty.",
"Men were put into the world to teach women the law of compromise.",
"The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
];

return quotes[n];
}





var randomQ = randomInt(0, 10);

function randomInt(lowest, size) {
Math.floor(Math.random() * size) + lowest;
return randomQ;
}

var quoteElem = document.getElementsByTagName("quote")[0];

quoteElem.innerHTML = getQuote(randomQ);

function getQuote(n) {
var quotes = [
"It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
"I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
"Silly things do cease to be silly if they are done by sensible people in an impudent way.",
"Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
"Life seems but a quick succession of busy nothings.",
"Our scars make us know that our past was for real.",
"I cannot speak well enough to be unintelligible.",
"One cannot be always laughing at a man without now and then stumbling on something witty.",
"Men were put into the world to teach women the law of compromise.",
"The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
];

return quotes[n];
}






javascript quotes






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Dec 23 at 21:47









halfer

14.3k758109




14.3k758109










asked Nov 12 at 1:51









Taina Gomez

33




33








  • 2




    post your html here...
    – SakoBu
    Nov 12 at 1:56










  • Definitely need your html to be able to help..
    – Smokey Dawson
    Nov 12 at 1:57














  • 2




    post your html here...
    – SakoBu
    Nov 12 at 1:56










  • Definitely need your html to be able to help..
    – Smokey Dawson
    Nov 12 at 1:57








2




2




post your html here...
– SakoBu
Nov 12 at 1:56




post your html here...
– SakoBu
Nov 12 at 1:56












Definitely need your html to be able to help..
– Smokey Dawson
Nov 12 at 1:57




Definitely need your html to be able to help..
– Smokey Dawson
Nov 12 at 1:57












1 Answer
1






active

oldest

votes


















3














You should learn to read your errors. undefined what?




"message": "Uncaught TypeError: Cannot set property 'innerHTML'




This means you're trying to set the innerHTML of an element that can't be found/doesn't exist.



var quoteElem = document.getElementsByTagName("quote")[0];


In HTML, there is no element tag called 'quote'. Perhaps you mean an element with an ID of 'quote' ?



Secondly, your function called randomInt() wasn't returning the random number you generated, but rather some undefined variable called 'randomQ'






var randomQ = randomInt(0, 10);
function randomInt(lowest, size) {
//Return the actual value instead
return Math.floor(Math.random() * size) + lowest;

//return randomQ <-- what is this? This is what is undefined
}

var quoteElem = document.getElementById("quote");

quoteElem.innerHTML = getQuote(randomQ);

function getQuote(n) {
var quotes = [
"It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
"I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
"Silly things do cease to be silly if they are done by sensible people in an impudent way.",
"Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
"Life seems but a quick succession of busy nothings.",
"Our scars make us know that our past was for real.",
"I cannot speak well enough to be unintelligible.",
"One cannot be always laughing at a man without now and then stumbling on something witty.",
"Men were put into the world to teach women the law of compromise.",
"The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
];

return quotes[n];
}

<div id="quote"></div>








share|improve this answer





















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53255071%2fhow-to-use-javascript-to-generate-random-quotes-on-a-website%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    3














    You should learn to read your errors. undefined what?




    "message": "Uncaught TypeError: Cannot set property 'innerHTML'




    This means you're trying to set the innerHTML of an element that can't be found/doesn't exist.



    var quoteElem = document.getElementsByTagName("quote")[0];


    In HTML, there is no element tag called 'quote'. Perhaps you mean an element with an ID of 'quote' ?



    Secondly, your function called randomInt() wasn't returning the random number you generated, but rather some undefined variable called 'randomQ'






    var randomQ = randomInt(0, 10);
    function randomInt(lowest, size) {
    //Return the actual value instead
    return Math.floor(Math.random() * size) + lowest;

    //return randomQ <-- what is this? This is what is undefined
    }

    var quoteElem = document.getElementById("quote");

    quoteElem.innerHTML = getQuote(randomQ);

    function getQuote(n) {
    var quotes = [
    "It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
    "I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
    "Silly things do cease to be silly if they are done by sensible people in an impudent way.",
    "Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
    "Life seems but a quick succession of busy nothings.",
    "Our scars make us know that our past was for real.",
    "I cannot speak well enough to be unintelligible.",
    "One cannot be always laughing at a man without now and then stumbling on something witty.",
    "Men were put into the world to teach women the law of compromise.",
    "The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
    ];

    return quotes[n];
    }

    <div id="quote"></div>








    share|improve this answer


























      3














      You should learn to read your errors. undefined what?




      "message": "Uncaught TypeError: Cannot set property 'innerHTML'




      This means you're trying to set the innerHTML of an element that can't be found/doesn't exist.



      var quoteElem = document.getElementsByTagName("quote")[0];


      In HTML, there is no element tag called 'quote'. Perhaps you mean an element with an ID of 'quote' ?



      Secondly, your function called randomInt() wasn't returning the random number you generated, but rather some undefined variable called 'randomQ'






      var randomQ = randomInt(0, 10);
      function randomInt(lowest, size) {
      //Return the actual value instead
      return Math.floor(Math.random() * size) + lowest;

      //return randomQ <-- what is this? This is what is undefined
      }

      var quoteElem = document.getElementById("quote");

      quoteElem.innerHTML = getQuote(randomQ);

      function getQuote(n) {
      var quotes = [
      "It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
      "I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
      "Silly things do cease to be silly if they are done by sensible people in an impudent way.",
      "Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
      "Life seems but a quick succession of busy nothings.",
      "Our scars make us know that our past was for real.",
      "I cannot speak well enough to be unintelligible.",
      "One cannot be always laughing at a man without now and then stumbling on something witty.",
      "Men were put into the world to teach women the law of compromise.",
      "The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
      ];

      return quotes[n];
      }

      <div id="quote"></div>








      share|improve this answer
























        3












        3








        3






        You should learn to read your errors. undefined what?




        "message": "Uncaught TypeError: Cannot set property 'innerHTML'




        This means you're trying to set the innerHTML of an element that can't be found/doesn't exist.



        var quoteElem = document.getElementsByTagName("quote")[0];


        In HTML, there is no element tag called 'quote'. Perhaps you mean an element with an ID of 'quote' ?



        Secondly, your function called randomInt() wasn't returning the random number you generated, but rather some undefined variable called 'randomQ'






        var randomQ = randomInt(0, 10);
        function randomInt(lowest, size) {
        //Return the actual value instead
        return Math.floor(Math.random() * size) + lowest;

        //return randomQ <-- what is this? This is what is undefined
        }

        var quoteElem = document.getElementById("quote");

        quoteElem.innerHTML = getQuote(randomQ);

        function getQuote(n) {
        var quotes = [
        "It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
        "I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
        "Silly things do cease to be silly if they are done by sensible people in an impudent way.",
        "Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
        "Life seems but a quick succession of busy nothings.",
        "Our scars make us know that our past was for real.",
        "I cannot speak well enough to be unintelligible.",
        "One cannot be always laughing at a man without now and then stumbling on something witty.",
        "Men were put into the world to teach women the law of compromise.",
        "The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
        ];

        return quotes[n];
        }

        <div id="quote"></div>








        share|improve this answer












        You should learn to read your errors. undefined what?




        "message": "Uncaught TypeError: Cannot set property 'innerHTML'




        This means you're trying to set the innerHTML of an element that can't be found/doesn't exist.



        var quoteElem = document.getElementsByTagName("quote")[0];


        In HTML, there is no element tag called 'quote'. Perhaps you mean an element with an ID of 'quote' ?



        Secondly, your function called randomInt() wasn't returning the random number you generated, but rather some undefined variable called 'randomQ'






        var randomQ = randomInt(0, 10);
        function randomInt(lowest, size) {
        //Return the actual value instead
        return Math.floor(Math.random() * size) + lowest;

        //return randomQ <-- what is this? This is what is undefined
        }

        var quoteElem = document.getElementById("quote");

        quoteElem.innerHTML = getQuote(randomQ);

        function getQuote(n) {
        var quotes = [
        "It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
        "I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
        "Silly things do cease to be silly if they are done by sensible people in an impudent way.",
        "Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
        "Life seems but a quick succession of busy nothings.",
        "Our scars make us know that our past was for real.",
        "I cannot speak well enough to be unintelligible.",
        "One cannot be always laughing at a man without now and then stumbling on something witty.",
        "Men were put into the world to teach women the law of compromise.",
        "The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
        ];

        return quotes[n];
        }

        <div id="quote"></div>








        var randomQ = randomInt(0, 10);
        function randomInt(lowest, size) {
        //Return the actual value instead
        return Math.floor(Math.random() * size) + lowest;

        //return randomQ <-- what is this? This is what is undefined
        }

        var quoteElem = document.getElementById("quote");

        quoteElem.innerHTML = getQuote(randomQ);

        function getQuote(n) {
        var quotes = [
        "It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
        "I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
        "Silly things do cease to be silly if they are done by sensible people in an impudent way.",
        "Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
        "Life seems but a quick succession of busy nothings.",
        "Our scars make us know that our past was for real.",
        "I cannot speak well enough to be unintelligible.",
        "One cannot be always laughing at a man without now and then stumbling on something witty.",
        "Men were put into the world to teach women the law of compromise.",
        "The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
        ];

        return quotes[n];
        }

        <div id="quote"></div>





        var randomQ = randomInt(0, 10);
        function randomInt(lowest, size) {
        //Return the actual value instead
        return Math.floor(Math.random() * size) + lowest;

        //return randomQ <-- what is this? This is what is undefined
        }

        var quoteElem = document.getElementById("quote");

        quoteElem.innerHTML = getQuote(randomQ);

        function getQuote(n) {
        var quotes = [
        "It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.",
        "I hate to hear you talk about all women as if they were fine ladies instead of rational creatures. None of us want to be in calm waters all our lives.",
        "Silly things do cease to be silly if they are done by sensible people in an impudent way.",
        "Give a girl an education and introduce her properly into the world, and ten to one but she has the means of settling well, without further expense to anybody.",
        "Life seems but a quick succession of busy nothings.",
        "Our scars make us know that our past was for real.",
        "I cannot speak well enough to be unintelligible.",
        "One cannot be always laughing at a man without now and then stumbling on something witty.",
        "Men were put into the world to teach women the law of compromise.",
        "The person, be it gentlemen or lady, who has not pleasure in a good novel, must be intolerably stupid."
        ];

        return quotes[n];
        }

        <div id="quote"></div>






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 12 at 1:57









        Ashley Brown

        3,03162043




        3,03162043






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53255071%2fhow-to-use-javascript-to-generate-random-quotes-on-a-website%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            這個網誌中的熱門文章

            Xamarin.form Move up view when keyboard appear

            Post-Redirect-Get with Spring WebFlux and Thymeleaf

            Anylogic : not able to use stopDelay()