我有一个函数,我希望我传递的选择器执行封闭的进程。功能如下:
function menuselector (id){
$(id).css('background', 'url(../img/black_denim.png) repeat');
$(id).css('color', '#FFF');
}
function menudeselector (id){
$(id).css('background', 'none');
$(id).css('color', '#CE0101');
}
menuselector('mgi');
mgi
是div
代码的ID
答案 0 :(得分:6)
通过在id之前使用哈希来定位ID,与CSS中的相同。
如果你要传递
menuselector('mgi');
您需要调整它以使其成为有效的选择器。
$('#' + id).css(...
或者您可以发送有效选择器
menuselector('#mgi');
假设您有一个带有该ID的元素(您没有显示)
<div id="mgi">
<强>除了强>
你不应该继续选择元素。你可以链接
$(id).css('background', 'none').css('color', '#CE0101');
// on new lines for readability if there are a lot of actions
$(id).css('background', 'none')
.css('color', '#CE0101');
或使用对象
$(id).css({background: 'none', color: '#CE0101'});
答案 1 :(得分:1)
mgi
不是有效的选择器。你应该写:
menusector('#mgi');
或
menuselector('.mgi');
取决于您是要选择ID还是类。
你可以使用popnoodle的解决方案,如果你的功能只适用于ID,虽然这样的限制性似乎很差。
答案 2 :(得分:1)
如果它是ID,请传递'#mgi':
menuselector('#mgi');