創作內容

0 GP

在javascript中傳遞參數或物件到event或setTimeout

作者:怪鳥│2010-10-20 12:43:28│巴幣:0│人氣:657
不論是何種語言或script,傳遞參數到event一直都是比較困難且難以理解的工作,以下是javascript透過回傳function來解決傳遞參數到event的問題

傳遞值

var a = document.getElementsByTagName("input");
for (var i=0; i<a.length;i++) {
  a[i].onclick = function(idx) {
    return function(e) {
      alert(idx);
    };
  }(i);
}

傳遞node
function handle() {
  this.abc = "def";
  this.setHandler = function(obj) {
    obj.onclick = function(that) {
      return function() {
        alert(that.abc);
      };
    }(this);
  }
}
var a = new handle();
a.setHandler(document.getElementsByTagName('input')[0]);

setTimeout
function handle() {
  this.abc = "def";
  this.delayMsg = function(m) {
    setTimeout(function(a){
      return function(e){
        alert(a.abc);
      };
    }(this), m);
  };
}
var a = new handle();
a.delayMsg(600);
引用網址:https://home.gamer.com.tw/TrackBack.php?sn=546020
All rights reserved. 版權所有,保留一切權利

相關創作

同標籤作品搜尋:javascript

留言共 0 篇留言

我要留言提醒:您尚未登入,請先登入再留言

喜歡★stbird 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:在ASP.NET中取得全... 後一篇:.Net中SqlComm...

追蹤私訊切換新版閱覽

作品資料夾

chanxin95107所有老師們
翻譯菜鳥一枚,放了些蔚藍檔案的翻譯作品在小屋裡,有興趣的歡迎挑看選看( • ̀ω•́ )✧看更多我要大聲說9小時前


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】