我正在尝试创建一个脚本,在单击该按钮时,在3个按钮的行中为按钮添加左右边框,否则保持没有边框。我到目前为止的代码是:
$("#popular").click(function(){
clearBorders();
//make borders here (this works)
});
$("#suggestions").click(function(){
clearBorders();
//make borders here (this works)
});
$("recent").click(function(){
clearBorders();
//make borders here (this works)
});
function clearBorders(){
$('popular').css("border", "solid");
$('suggestions').css("border", "none");
$('recent').css("border", "none");
}
});
我可以很好地创建边框,但由于某种原因,clearborders方法无法正常工作。我知道正在调用该函数,因为如果我在其开头发出警报,它就会显示出来。为什么这个功能不起作用?
答案 0 :(得分:6)
您的选择器缺少clearBorders()函数中的前导ID(#)或类(。)指示符
答案 1 :(得分:1)
我对此进行了测试,你需要做一个$(“文档”).ready(function(){});包装。我已经调整过使用类,所以你可能会或可能不会使用id。在我处理文档之前,至少下面的测试用例对我不起作用。
<script type="text/javascript">
$("document").ready(function(){
$(".popular").click(function(){
clearBorders(); }
);
$(".suggestions").click(function(){
clearBorders();
// make borders here (this works)
});
$(".recent").click(function(){
clearBorders();
//make borders here (this works)
}); }
);
function clearBorders(){
$('.popular').css("border", "1px solid red");
$('.suggestions').css("border", "1px solid red");
$('.recent').css("border", "1px solid red");
};
</script>
富