如何使用 HTML、CSS 和 JavaScript 构建随机报价生成器?

1. 简介

随机报价生成器是一个简单的Web应用程序,它能够随机生成各种行业和场景下的报价。 在本文中,我们将使用HTML、CSS和JavaScript来构建一个随机报价生成器。

2. HTML结构

我们需要为我们的Web应用程序创建一个简单的HTML结构。在“body”中,我们将包含一个标题、一个报价文本区域和一个生成新报价的按钮。

<body>

<h3>随机报价生成器</h3>

<div>

<p id="quote-text"></p>

<p id="quote-author">- <span id="author"></span></p>

</div>

<button id="new-quote-btn">生成新报价</button>

</body>

3. CSS样式

让我们使用CSS样式为我们的Web应用程序添加一些美感。 我们将使用Flexbox布局来居中我们的报价文本和按钮,并为其添加一些基本样式。

body {

background-color: #f9f9f9;

font-family: sans-serif;

display: flex;

flex-direction: column;

justify-content: center;

align-items: center;

height: 100vh;

}

h3 {

margin-top: 0;

color: #333333;

}

div {

background-color: #ffffff;

padding: 30px;

margin-bottom: 30px;

box-shadow: 0px 2px 8px rgba(0,0,0,0.1);

text-align: center;

}

p#quote-text, p#quote-author {

font-size: 22px;

font-style: italic;

margin-bottom: 10px;

}

span#author {

font-weight: bold;

}

button#new-quote-btn {

background-color: #008CBA;

color: #ffffff;

border: none;

padding: 10px 20px;

border-radius: 4px;

cursor: pointer;

transition: all 0.3s ease;

}

button#new-quote-btn:hover {

background-color: #007096;

}

4. JavaScript代码

现在我们需要添加JavaScript代码,来完成生成随机报价的逻辑。我们可以创建一个引用报价的数组,并使用JavaScript中的“Math.random”方法来随机选择数组中的一项。 我们还要实现一个函数,用于在单击“生成新报价”按钮时更新报价文本和作者名称。

const quotes = [

{

quote: "成功是努力的另一个名字。",

author: "沃伦·巴菲特"

},

{

quote: "成功是跑出来的,全靠自己的两腿。",

author: "孙笑川"

},

{

quote: "成功就是把复杂的问题简单化,然后狠狠去做。",

author: "刘慈欣"

},

{

quote: "成功是一种观念,成功是一个习惯,而不是偶然。",

author: "亚伯拉罕·林肯"

},

{

quote: "只要你在乎,你就一定能做得好。",

author: "乔布斯"

},

{

quote: "长风破浪会有时,直挂云帆济沧海。",

author: "李白"

}

];

function getRandomQuote() {

const randomNumber = Math.floor(Math.random() * quotes.length);

return quotes[randomNumber];

}

function displayQuote() {

const { quote, author } = getRandomQuote();

document.getElementById('quote-text').innerHTML = quote;

document.getElementById('author').innerHTML = author;

}

displayQuote();

document.getElementById('new-quote-btn').addEventListener('click', displayQuote);

5. 总结

到这里,我们已经成功的构建了一个简单的随机报价生成器。我们使用HTML创建了基本的页面结构,使用CSS样式美化了页面,使用JavaScript实现了随机选择报价、更新报价文本和作者名称的逻辑。这个应用程序很简单,但是它展示了如何将HTML、CSS和JavaScript结合起来创建一个实用的应用程序。