Jquery hasClass + If Statement
我希望以下loadContent函数仅在单击的链接具有某个类时才加载目标div。 这是我到目前为止所提出的:
function loadContent(targetDIV, sourceURL) { if ( $(this).hasClass("done") ) { $(""+targetDIV+"").load(""+sourceURL+""); } } News
该函数在没有if语句的情况下工作,但我似乎无法让hasClass与if – any思想一起工作? 谢谢!
将其更改为以下内容,它应该工作:
News
通过使用.call()
,您可以将loadContent
函数中的loadContent
值设置为当前元素。
因为我们使用onclick
,内联处理程序中的this
将为您提供传递的引用。
它不起作用的原因是因为函数中对“this”的引用实际上并不是指链接。 将链接本身传递给函数以获得更好的结果:
function loadContent(linkObj, targetDIV, sourceURL) { if ( $(linkObj).hasClass("done") ) { $(""+targetDIV+"").load(""+sourceURL+""); } } News
您可以使用jquery click()方法来绑定您的点击,而不是使用href =“javascript:…”
我不确定“this”是否设置正确,但是我认为使用jquery click会确保“this”是你所期待的。 我也认为它更清楚。