我有一个关于jQuery类选择器的问题。我正在查看使用名为slidedeck的jQuery插件的页面,页面作者有两个<div>
,它们显示两个不同的幻灯片设置。沿着这些线路:jQuery类选择器 - 它默认的范围是什么?
<div id="slidedeck_frame" class="skin-slidedeck"><dl class="slidedeck">
<!-...HTML in here-->
</div>
<script type="text/javascript">
$('.slidedeck').slidedeck({
autoPlay: true,
cycle: true,
autoPlayInterval: 2500, // 2.5 seconds
hideSpines: true
});
</script>
<div id="slidedeck_frame" class="skin-slidedeck"><dl class="slidedeck">
<!-...HTML in here-->
</div>
<script type="text/javascript">
$('.slidedeck').slidedeck();
</script>
所以,你有两个<div>
的分享相同的ID和CSS类为他们的孩子,但有不同slidedeck设置。
我本以为jQuery类选择器会将最后一个slidedeck设置应用于<dl>
s,但实际上它们都使用直接在它们下面的slidedeck设置。我不可能理解jQuery选择器范围(很有可能),或者有可能在这里玩别的东西吗?
你不能在HTML中具有相同ID的元素。 ID必须是唯一的;如果有重复,所有投注都关闭。 –
马特 - 谢谢你的回复。我意识到重复的HTML ID是一个禁忌,但想知道为什么,鉴于此,jQuery像它一样运行。听起来像事情几乎愚蠢的运气,像他们一样工作? – larryq