Jquery点击事件不会多次触发

时间:2014-01-01 20:22:34

标签: javascript jquery html css

我遇到的问题是我的JQuery点击事件只触发一次。基本上,我有一个小页面设置了一个按钮,读取生成流行语。单击按钮时,div“Oren-is”清空,另一个div淡出。然后,来自数组的字符串将附加到清空的div。所有这些都可以正常使用代码,但它只发生一次。

我确信这是一个非常简单的问题:基本上,我如何不止一次地发生这种情况?在我第一次点击“生成流行语”后,一切都正常激活。但是,我不能多次点击它!

这是我的代码:

var $buzzwords = ["Oren Weingrod is object-oriented.", "Oren Weingrod is agile.", "Oren Weingrod is a human.", "Oren Weingrod is analytics driven.", "Oren Weingrod is dynamic!", "Oren Weingrod is lean", "Oren Weingrod is tele-commuting", "Oren Weingrod is integration testing"];

var $buzz = $('.generate-buzzword');
$(document).ready(function(){
var random = Math.floor((Math.random(8))*10);
alert(random);
$buzz.on("click", function(){
    $('#smalltext').remove();
    $('#oren-is').empty();
    $('#oren-is').append($buzzwords[random]);

    });
});

相关HTML:

<section id="oren">
            <p id="oren-is">Oren* Weingrod is not a pine tree. </p> 
            <a href="#" class="generate-buzzword"> Generate Buzzword </a> 
            <p id="smalltext">*Oren means pine tree in Hebrew.</p>
</section>

1 个答案:

答案 0 :(得分:2)

要同意我的评论,请更改您的代码,以便在每次点击时实际生成一个新的radom编号:

$buzz.on("click", function(){
  var random = Math.floor((Math.random($buzzwords.length))*10);
  $('#smalltext').remove();
  $('#oren-is').empty();
  $('#oren-is').append($buzzwords[random]);

  });
});

我也是这样做的,所以你的幻数'8'现在是你的流行语数组的长度,所以当你添加/删除时,你不必更新你的代码=)