我有一个代码,以某种排列方式显示图像以反映晶圆。当用户单击图像时,会在其周围放置红色边框。然后将此图像ID保存在cookie数组中,当重新加载页面时,这些特定图像需要保留其边框。
我的问题是我无法使用id访问html元素。
例如:
$("#10.3_6").css('border', "solid 2px red");
不起作用。这是我放在边境的方式:
$("tr.smallthumbs a img").click(function() {
var found = 0;
for(var j in array){
if(this.id == array[j]){
found = j+1;
break;
};
};
if(found == 0){
$(this).css('border', "solid 2px blue");
array.push(this.id);
console.log(this)
}
else {
$(this).css('border', "solid 2px white");
array.splice(found-1,1)
};
$.cookie('activePixels',array);
});
这会在所有图像周围显示红色边框。
$("tr.smallthumbs a img").css('border', "solid 2px red");
如何通过ID识别一个?
谢谢!
答案 0 :(得分:1)
选择器
$("#10.3_6")
表示包含id="10"
和class="3_6"
的元素。如果您想要使用id="10.3_6"
访问元素,则需要转义.
:
$("#10\\.3_6")
为您的ID使用不同的命名方案是个好主意,因为.
在选择器中具有这种特殊含义。
答案 1 :(得分:0)
你需要逃避.
。 .
表示类选择器,因此您使用的选择器会查找标识为10
且cass 3_6
$("#10\\.3_6").css('border', "solid 2px red");
请参阅How do I select an element by an ID that has characters used in CSS notation?