我必须在点击链接时创建this之类的功能,它会在弹出框中显示产品详细信息 这是使用我不理解的大jquery代码
这是我的jsfiddle 我试图给出一些带有不同#tags的链接,以显示div 我希望当我点击链接它解析相同的href值并显示相应的结果,但它没有工作 有人可以建议正确的方式 这是我的JS
$(".show").click(function() {
var link = $('this').attr('href');
$(link).show();
});
和html
<a href="#popup" id="show" class="show">a</a>
<a href="#popup1" id="show1" class="show">b</a>
<a href="#popup2" id="show2" class="show">c</a>
我想在锚点击
上显示#popupfiddle上的完整代码,我希望this functionality
答案 0 :(得分:3)
您应该致电$(this)
,而不是$('this')
$(this)
将this
引用的对象包装在jQuery对象中,$('this')
将遍历您的所有文档,查找标记为this
的html节点(很像$('div')
将查找标记为div
的html节点);由于没有,它将选择一个空的节点列表。工作小提琴:http://jsfiddle.net/Hg4zp/3/
(还有一个拼写错误,调用.hide(")
而不是.hide()
)
答案 1 :(得分:0)
尝试这种方式:
$(".show").click(function (e) { //<-----pass the event here
e.preventDefault(); //<--------------stop the default behavior of the link
var link = $(this).attr('href'); //<-remove the quotes $(this)
$(link).show();
});
$(".close").click(function () {
$(this).closest("div.popupbox").hide(); //<----use .hide(); not .hide(");
});
在这些情况下,您应该使用preventDefault()
来停止点击链接时发生的跳转。