我有252个li,他们的ID由1到252之间的数字定义。我想要实现的是每次点击h1时替换随机li中的文本。然而,这不起作用。我错过了什么?
$('h1').click(function() {
var flashNumber = Math.floor((Math.random() * 251) + 1);
$('#'+flashNumber).html('test');
});
答案 0 :(得分:0)
代码看起来很好。如果您的HTML也只是<div>
的列表,那么我只能看到一个潜在问题 - 您div#id
的名称。在HTML5之前,他们必须以字母开头。你使用什么doctype?也许它在不同的浏览器中表现不同?
尝试在您的ID名称中添加一个字母:
$(document).ready(function(){
$('h1').click(function() {
var flashNumber = Math.ceil((Math.random() * 251));
$('#my-divs-' + flashNumber).html('test');
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1>Click</h1>
<div id="my-divs-1"></div>
<div id="my-divs-2"></div>
<div id="my-divs-3"></div>
<div id="my-divs-4"></div>
<div id="my-divs-5"></div>
<div id="my-divs-6"></div>
...
<div id="my-divs-251"></div>