我想要点击一系列按钮,具体取决于页面末尾的哈希值,这可以根据与页面的交互性而改变。我可以通过按类(.fullscreen-button')选择按钮以及它们在按钮数组中的编号来完成这个任务,但是我不能通过使用它们的唯一ID来选择相同的按钮。我宁愿用他们的ID来选择它们,因为它们在数组中的顺序可以改变。
这是我的函数,通过类方法...
$(function() {
if ( document.location.href.indexOf('#Programming') > -1 ) {
$('.fullscreen-button')[0].click();
} else if ( document.location.href.indexOf('#3D') > -1 ) {
$('.fullscreen-button')[1].click();
} else if ( document.location.href.indexOf('#Acting') > -1 ) {
$('.fullscreen-button')[2].click();
} else if ( document.location.href.indexOf('#Audio') > -1 ) {
$('.fullscreen-button')[3].click();
}
});
...这就是我尝试使用ID方法但不起作用的方法......
$(function() {
if ( document.location.href.indexOf('#Programming') > -1 ) {
$('#Programming for Web').click();
} else if ( document.location.href.indexOf('#3D') > -1 ) {
$('#3D Design').click();
} else if ( document.location.href.indexOf('#Acting') > -1 ) {
$('#Acting').click();
} else if ( document.location.href.indexOf('#Audio') > -1 ) {
$('#Audio Editing').click();
}
});
为什么在这种情况下不按照ID选择对象?
编辑:好吧,那是那些空间。感谢大家的帮助!
答案 0 :(得分:3)
您不应该在ID字符串中使用空格。 http://www.w3.org/TR/html4/types.html
但是,如果这样做,则需要在jquery中转义空格以选择它。否则$("#Programming for web")
会在{}中寻找<web>
:
<div id="Programming">
<for>
<web/>
</for>
</div>
要选择[此无效] ID字符串,您可以使用:$("#Programming\\ for\\ web")
答案 1 :(得分:0)
你不能在div id名称中包含空格,这就是为什么只删除空格并且它会起作用:)