我正在使用jQuery在DOM中选择元素,我尝试了以下内容:
$(document).ready(function() {
$("a").toggle(function(){
$("div[@id=SomeID]").hide('slow');
},function(){
$("div[@id=SomeID]").show('fast');
});
});
在html源代码中,我确实有这一部分:
<div id="SomeID">
<!-- div code -->
</div>
但是,当我点击锚标记时,我收到以下错误:
语法错误,无法识别的表达式:div [@ id = SomeID]
关于这里出了什么问题的任何想法?我是jQuery和javaScript的初学者,所以非常感谢任何帮助。
答案 0 :(得分:4)
要在jQuery中按id
选择元素,请使用与CSS中相同的语法:
$('#someID');
要使用attribute-equals选择器格式,请使用:
$('div[id="someID"]');
参考文献:
答案 1 :(得分:1)
您使用的是错误的选择器.Id必须以#
为前缀这些是有效的
$("#SomeID").hide('slow'); // element with id SomeID , can be any element
$("div#SomeID").hide('slow'); // Div with id SomeID
$("div[id=SomeID]").hide('slow'); // Div with id SomeID
$("div[id^=SomeID]").hide('slow'); // Div id that starts with SomeID
$("div[id*=SomeID]").hide('slow'); // Div id that has SomeID in its id attribute
$("div[id=SomeID]").hide('slow'); // Div id that ends with SomeID