簡體   English   中英

有人可以告訴我這在ff中如何/為什么起作用

[英]can someone tell me how/why this works in ff and ie

--script--
function myalert(name){
  var obj=this;
  obj.run=run;
  function run(){
    alert(name);
  }    
  div=document.createElement('div');
  div=document.body.append(div);
  txt=document.createTextNode('alert');
  div.appendChild(txt);
  //**
  div.onclick=function(){ obj.run(); }
  //**
}
--html--
<div onclick="myalert('mee');">matt</div>

我發現很奇怪的是,從dom元素中在函數外部調用了obj.run(),並且還保留了函數參數

這個方法還有什么陷阱嗎?

這稱為Closure

關於這一點有很多值得閱讀的內容。

您正在尋找對“詞法范圍”的理解。 這是一種解釋: 什么是詞匯范圍?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM