对于我的菜单,我想检查点击的元素是否具有某个类名。如果有,则应遵循特定的操作,否则不遵循。因此,我有以下方法,没有工作..
$(function(){
$("a").click(function(event){
if(this.hasClass("noLink")){
event.preventDefault();
alert("no link here");
}
});
});
..
<a href="page.html" title="Title" class="topNav noLink" id="site">Link</a>
上面的代码不起作用,它将转到page.html,我没有得到警报。我在这做错了什么?
我也试过了if(this.hasClass("noLink") == 'true'){
但是这个伎俩都没有。
感谢任何帮助!
答案 0 :(得分:9)
试试这个:
$(function(){
$("a").click(function(event){
if($(this).hasClass("noLink")){ //`this` plain is a DOM element
event.preventDefault();
alert("no link here");
}
});
});
答案 1 :(得分:1)
试试这个:
$(function(){
$("a").click(function(event){
if($(this).hasClass("noLink")){
event.preventDefault();
alert("no link here");
}
});
});
..
<a href="page.html" title="Title" class="topNav noLink" id="site">Link</a>
您需要使用$(this)
代替this
。