jQuery - 在元素上调用函数

tsc*_*dia 1 javascript jquery function call

我想调用一个函数来显示和修改这样的内容:

$('#element').someFunction();
Run Code Online (Sandbox Code Playgroud)

我写了这个函数:

function someFunction(){
     $(this).show();
     //other stuff
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用.有人可以给我一个提示如何解决这个问题.

Jos*_*ier 8

您可以扩展jQuery并创建自定义方法:

$.fn.someFunction = function() {
  return this.hide();
};

$('.element').someFunction();
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="element">This should be hidden.</div>
<div class="element">This should be hidden.</div>
Run Code Online (Sandbox Code Playgroud)

内部.hide()将迭代每个元素,但如果您想手动执行此操作,您可以只使用该.each()方法:

$.fn.someFunction = function() {
  return this.each(function() {
    // 'this' refers to the element here
  });
};
Run Code Online (Sandbox Code Playgroud)