文章詳情頁
javascript - 關于事件綁定時指定this的問題,求助
瀏覽:143日期:2022-11-13 18:59:46
問題描述
function Tab($selector){ var _this = this;// 這種可以保證this正確,但是這樣寫很累贅 $selector.on('click', function(){_this.switchIndex(); }); // 不兼容ie某些瀏覽器 $selector.on('click', this.switchIndex.bind(this));// 這種方式綁定會導致switchIndex內(nèi)部的this為$selector,除了上面那些, // 還有其他比較自然的方式嗎? $selector.on('click', this.switchIndex);}Tab.prototype = { switchIndex: function(){// ... }};
問題解答
回答1:講真,第一種,很常見了,用多了也沒啥。
當然,如果喜歡第二種,可以考慮用bind的polyfill(即在沒有bind的情況下利用call等方法來實現(xiàn)bind)。
ps: es6的話,箭頭函數(shù)就沒有這種煩惱,但正如第二種的情況,只支持高版本現(xiàn)代瀏覽器。
標簽:
JavaScript
相關文章:
1. javascript - 求助,nodeJS和koa2文檔對新手小白太不友好,一臉懵逼。。。2. python - 求助,ValueError: View function did not return a response3. 求助一個Android控件名稱4. python - thrift 返回 TSocket read 0 bytes 求助!!!!5. 求助python安裝mysql模塊出錯6. list - python 求助7. javascript - 求助Angular 1 在$scope里向?qū)ο髮傩再x值不起效的原因(作用域問題),無盡感激!8. javascript - 正則的截取匹配問題求助9. angular.js - angular post的Content-Type被設置,導致不能上傳圖片,求助!!10. javascript - 求助canvas繪制馬賽克的問題,老是取色不準
排行榜

熱門標簽