亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在jQuery事件中控制“ this”的值

在jQuery事件中控制“ this”的值

四季花海 2019-11-29 10:57:19
我使用jQuery創建了一個“控件”,并使用jQuery.extend來幫助使其盡可能地面向對象。在控件初始化期間,我連接了各種單擊事件,如下所示jQuery('#available input',             this.controlDiv).bind('click', this, this.availableCategoryClick);注意,我正在將“ this”作為bind方法中的數據參數。我這樣做是為了獲得附加到控件實例的數據,而不是從激發click事件的元素中獲取數據。這完美地工作,但是我懷疑有更好的方法我曾經使用過Prototype,但我記得綁定語法使您可以控制事件中'this'的值。jQuery的方式是什么?
查看完整描述

3 回答

?
回首憶惘然

TA貢獻1847條經驗 獲得超11個贊

您可以將其jQuery.proxy()與匿名函數一起使用,只是有點尷尬地認為“上下文”是第二個參數。


 $("#button").click($.proxy(function () {

     //use original 'this'

 },this));


查看完整回答
反對 回復 2019-11-29
?
UYOU

TA貢獻1878條經驗 獲得超4個贊

我喜歡您的方式,實際上使用了類似的構造:


$('#available_input').bind('click', {self:this}, this.onClick);

以及this.onClick的第一行:


var self = event.data.self;

我喜歡這種方式,因為這樣您既可以單擊元素(如此),也可以將“ this”對象作為自身,而不必使用閉包。


查看完整回答
反對 回復 2019-11-29
  • 3 回答
  • 0 關注
  • 514 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號