fadIn array in javascript 中的下一个文本
fadIn the next text in array in javascript
假设我有一个代码可以随机选择数组中的一个元素,如下所示,我将如何使下一个元素淡入;
var textHolder = document.getElementById("text");
var button = document.getElementById("btn");
var arrayText = ["the King", "love don't cost a thing", "the programming guru", "a"];
<h2 id="text">change me randomly</h2>
<button id="btn">new random</button>
这是执行随机文本生成器的函数
var randomText = function(){
var randomNumber = Math.floor(Math.random()*arrayText.length);
textHolder.innerHTML = arrayText[randomNumber];
};
我尝试在此处添加 fadin 方法,但代码停止工作,但是当我删除 fade 方法时,它又开始工作了,请问我做错了什么。
button.addEventListener("click", function(){
textHolder.fadeOut();
randomText();
textHolder.fadeIn();
});
我认为您可以使用 jQuery 来做到这一点,这是我的代码片段
var textHolder = $("#text"); // See, you can type less
var button = $("#btn"); // Also here
var arrayText = ["the King", "love don't cost a thing", "the programming guru", "a"];
var randomText = function() {
var randomNumber = Math.floor(Math.random() * arrayText.length);
textHolder.text(arrayText[randomNumber]);
};
$(function() {
// On click event
button.click(function() {
// Fade out the text holder
textHolder.fadeOut(function() {
// After that, display the random text
randomText();
// then, fade in the text holder
$(this).fadeIn();
});
});
});
<!-- Here, I've included jQuery library to make it work. -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!-- Contents -->
<h2 id="text">change me randomly</h2>
<button id="btn">new random</button>
假设我有一个代码可以随机选择数组中的一个元素,如下所示,我将如何使下一个元素淡入;
var textHolder = document.getElementById("text");
var button = document.getElementById("btn");
var arrayText = ["the King", "love don't cost a thing", "the programming guru", "a"];
<h2 id="text">change me randomly</h2>
<button id="btn">new random</button>
这是执行随机文本生成器的函数
var randomText = function(){
var randomNumber = Math.floor(Math.random()*arrayText.length);
textHolder.innerHTML = arrayText[randomNumber];
};
我尝试在此处添加 fadin 方法,但代码停止工作,但是当我删除 fade 方法时,它又开始工作了,请问我做错了什么。
button.addEventListener("click", function(){
textHolder.fadeOut();
randomText();
textHolder.fadeIn();
});
我认为您可以使用 jQuery 来做到这一点,这是我的代码片段
var textHolder = $("#text"); // See, you can type less
var button = $("#btn"); // Also here
var arrayText = ["the King", "love don't cost a thing", "the programming guru", "a"];
var randomText = function() {
var randomNumber = Math.floor(Math.random() * arrayText.length);
textHolder.text(arrayText[randomNumber]);
};
$(function() {
// On click event
button.click(function() {
// Fade out the text holder
textHolder.fadeOut(function() {
// After that, display the random text
randomText();
// then, fade in the text holder
$(this).fadeIn();
});
});
});
<!-- Here, I've included jQuery library to make it work. -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!-- Contents -->
<h2 id="text">change me randomly</h2>
<button id="btn">new random</button>