2017-03-15 86 views
0

如何在另一個函數內執行一個管理點擊交互的外部處理函數? 我有一個渲染函數,它動態呈現我的HTML。在另一個文件中,我定義了一個處理HTML生成的控制腳本。在渲染函數內部,我想調用處理點擊交互的函數(在控制腳本中定義)。任何解決方案如何執行外部處理函數?

+0

範你提供的代碼,請?通常,你只需要從你的渲染函數裏調用函數,但是有一些代碼會有幫助 – margarita

回答

0

這是一個契約:你的頁面包含的每個javascript文件都成爲文檔全局javascript內容的一部分。

所以,如果你第一次包括與函數clickhandler功能的文件,然後用渲染功能的文件,你可以調用渲染功能的函數clickhandler功能例如像

HTML

<div id="bodySimulation"> 
    I'm the body. 
</div> 

JS

/* simulation of first javascript file */ 
function clickHandler(domElement) { 
    alert(domElement.innerHTML); 
} 

/* simulation of second javascript file */ 
function renderDiv(content) { 
    var div = document.createElement("div"); 
    div.innerHTML = content; 
    div.addEventListener("click", function() { 
     clickHandler(this); 
    }); 
    document.getElementById("bodySimulation").appendChild(div); 
} 
renderDiv("a div"); 
renderDiv("another div"); 

fiddle