假设以下html:
<div id='test#1'>test1</div> <div id='test#2'>test2</div>
现在,以下操作无效,为什么?
CSS…。
#test#1{color: red;}
jQuery ....
$('#test#2').css('color','blue');
要将任何元字符(例如!“#$%&’()* +,。/ :; <=>?@[[]^`{|}〜)用作名称的文字部分,必须使用用反斜杠转义:
CSS方式:
#test\#1{ color: red; }
jQuery的方式:
$('#test\\#2').css('color','blue');
建议:
您不应该在ID中使用#,以获取更多详细信息
ID和NAME令牌必须以字母([A-Za-z])开头,后跟任意数量的字母,数字([0-9]),连字符(“-”),下划线(“ _”),冒号(“:”)和句点(“。”)。
因此,您可能还想知道是否可以使用id =“ test.1”,为此,您也应该如上所述转义字符。