Javascript 将“this”从onclick事件传递到JQuery
我想从锚标记中删除onclick=togglePassthis,并想在jQuery中使用它。我不知道如何将此作为参数发送到jQuery的 $'elem'。单击函数 现在,我正在尝试用以下内容替换onclick: $'elem'。单击函数{..Some code..} 但不确定如何传递此消息。您不需要显式传递此消息。 它会自动隐式地绑定到触发事件的元素 请尝试以下示例: $.elem.clickfunction{ //这是指当前单击的元素 $this.toggleClass'blue'; }; 埃伦先生{ 背景:绿色; 宽度:200px; 高度:200px; 边界半径:3px; } 蓝先生{ 背景:蓝色; } 容器您不需要显式地传递它。 它会自动隐式地绑定到触发事件的元素 请尝试以下示例: $.elem.clickfunction{ //这是指当前单击的元素 $this.toggleClass'blue'; }; 埃伦先生{ 背景:绿色; 宽度:200px; 高度:200px; 边界半径:3px; } 蓝先生{ 背景:蓝色; } 容器您不需要在jquery中传递这个。希望这个例子能帮助你 $document.readyfunction{ $.red.clickfunction{ $this.toggleClassgreen; }; }; 瑞德先生{ 背景:红色; 宽度:100px; 高度:100px; } .红.绿{ 背景:绿色; } 单击以更改颜色您不需要在jquery中传递此选项。希望这个例子能帮助你 $document.readyfunction{ $.red.clickfunction{ $this.toggleClassgreen; }; }; 瑞德先生{ 背景:红色; 宽度:100px; 高度:100px; } .红.绿{ 背景:绿色; } 单击以更改颜色对于设置为事件处理程序的函数中的内容,当前未指定。函数的第一个参数应该是jQuery事件Javascript 将“this”从onclick事件传递到JQuery,javascript,jquery,Javascript,Jquery,我想从锚标记中删除onclick=togglePassthis,并想在jQuery中使用它。我不知道如何将此作为参数发送到jQuery的 $'elem'。单击函数 现在,我正在尝试用以下内容替换onclick: $'elem'。单击函数{..Some code..} 但不确定如何传递此消息。您不需要显式传递此消息。 它会自动隐式地绑定到触发事件的元素 请尝试以下示例: $.elem.clickfunction{ //这是指当前单击的元素 $this.toggleClass'blue'; };
function fn(_this, e) {
console.log(
_this /* event */
, this /* `HTMLParagraphElement`
, `e` : `undefined` */
)
}
$("p").on("click", fn);
您不必向函数或.on传递附加参数。事件处理程序中的对象应该是DOM元素,而不是事件处理程序中的jQuery对象。如果希望这是可以使用的处理程序的第一个参数,那么可以使用$.proxy,它还提供了一个参数来将参数传递给函数
function fn(_this, e) {
console.log(
_this /* `[456]` */
, this /* `{abc: 123}` `e` : `jQuery.Event` */
)
}
$("p").on("click", $.proxy(fn, {abc:123}, [456]));
对于设置为事件处理程序的函数中的内容,当前没有具体说明。函数的第一个参数应该是jQuery事件
function fn(_this, e) {
console.log(
_this /* event */
, this /* `HTMLParagraphElement`
, `e` : `undefined` */
)
}
$("p").on("click", fn);
您不必向函数或.on传递附加参数。事件处理程序中的对象应该是DOM元素,而不是事件处理程序中的jQuery对象。如果希望这是可以使用的处理程序的第一个参数,那么可以使用$.proxy,它还提供了一个参数来将参数传递给函数
function fn(_this, e) {
console.log(
_this /* `[456]` */
, this /* `{abc: 123}` `e` : `jQuery.Event` */
)
}
$("p").on("click", $.proxy(fn, {abc:123}, [456]));
这应该是click处理程序中的DOM元素。当事件被调度时,您是否试图在事件处理程序内将其设置为其他值?您不必这样做,因为处理程序内的此值将引用元素。因此,如果我试图用外部jquery(如$'elm')替换内联onclick方法,请单击函数{..some code..};那么我是否需要将参数发送到jquery方法?这应该是click处理程序中的DOM元素。当事件被调度时,您是否试图在事件处理程序内将其设置为其他值?您不必这样做,因为处理程序内的此值将引用元素。因此,如果我试图用外部jquery(如$'elm')替换内联onclick方法,请单击函数{..some code..};那么我是否需要将参数发送到jquery方法?