我想选择调用 jQuery 函数的元素。我认为这应该有效,但事实并非如此。
元素:
<a href="#" onclick="$.myFunction(this)">link</a>
功能:
(function ($) {
$.myFunction = function (element) {
element.hide()
}
}(jQuery));
this
是 DOM 节点,所以尝试使用
$(element).hide()
作为旁注,尽可能避免使用内联处理程序,因为它们很快或以后会使您的代码变得混乱且难以维护:如果您可以控制代码,则可以改为编写
<a href="#" class="someclass">link</a>
和
$(function() {
$('body').on('click', 'a.someclass', function() {
$(this).hide();
});
});
使用更简洁的事件委托
这应该有效:
html:
<a href="#" class="myclass">link</a>
JS:
$('.myclass').click(function() {
$(this).hide();
});