2016-05-01 16 views
1

這裏是我的我的HTML:如何找出一個函數是從(JavaScript)的稱爲元素

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8"> 
<link rel = "stylesheet" type="text/css" href="styles/css/style.css" /> 
</head> 
<body> 
<div> 
    <select class="option_block" size="5" multiple="1"> 
      <option>Option 1</option> 
      <option>Option 2</option> 
      <option>Option 3</option> 
      <option>Option 4</option> 
      <option>Option 5</option> 
     </select> 

     <div class="button_block" multiple="1"> 

      <button class="move_button" id="MoveAllToRight">>></button> 
      <button class="move_button" id="MoveToRight">></button> 
      <button class="move_button" id="MoveToLeft"><</button> 
      <button class="move_button" id="MoveAllToLeft"><<</button> 

     </div> 

    <select class="option_block" size="5"></select> 

</div> 

<script src="scripts/javascript/script.js"></script> 
</body> 
</html> 

的Adh這裏是我的JS腳本:

(function(){ 

function move(direction) { 
.......... 
} 

function moveAll(direction) { 
........... 
} 


document.getElementById("MoveAllToRight").addEventListener("click", function() { 
    moveAll('ToRight'); 
}); 

document.getElementById("MoveToRight").addEventListener("click", function() { 
    move('ToRight'); 
}); 

document.getElementById("MoveToLeft").addEventListener("click", function() { 
    move('ToLeft'); 
}); 

document.getElementById("MoveAllToLeft").addEventListener("click", function() { 
    moveAll('ToLeft'); 
}); 


})(); 

我決定不顯示包含movemoveAll functon,因爲它顯然是過度的信息。

如何才能訪問包含movemoveAll函數內部元素的「div」? 我有一個使用「ID」的解決方案,但它不可擴展。

+0

'的document.getElementById工作(「MoveAllToLeft」) .parentElement' – Redu

+0

在各自的回調中使用'event.currentTarget'('event'參數)或'this',並將它傳遞給'move' /'moveAll'。 – Bergi

回答

1
document.getElementById("MoveAllToRight").addEventListener("click", function(event) { 
    moveAll(event, 'ToRight'); 
}); 

函數event.target內部會顯示調用事件的元素。

+1

您忘記將'event'對象傳遞給回調函數。 –

+1

調用'moveAll(event,'ToRight')'將執行該函數,而不是將其作爲回調附加。 –

1

除非您明確地將您的事件偵聽器綁定到其他事物,否則「this」關鍵字將成爲觸發事件的元素。

所以,你應該能夠做

this.parentElement 

來訪問父股利或弄清楚如何走大教堂與任何圖書館您與

相關問題