2015-11-10 68 views
0

我嘗試刪除一個mouseover方法,直到我mouseout,但我正在使用JavaScript。有沒有類似jQuery的方法?stopPropagation或preventDefault在JavaScript中?

這是我的事件

function addEventListeners() { 
    document.getElementById("container").addEventListener("mouseover", isClicked); 
    document.getElementById("container").addEventListener("mouseleave", collapse); 
    document.getElementById("close-button").addEventListener("click", collapse);   
    document.getElementById("box").addEventListener("click", clickthrough); 
    document.getElementById("replay").addEventListener("click", replay); 
    if(isIphone) document.getElementById("video").addEventListener("click", function(){collapse()}); 
} 

<div id="container"> 
    <div id="ad" class="collapsed"> 
     <div id="banner"> 
      <img class="back" id="back" src="frames/frame_1.jpg"/> 
      <img class="top" id="top" src="frames/frame_2.jpg"/> 
      <img id="logo1" type="image/svg+xml" src="" />            
      <div class="border" id="border"></div> 
      <div id="cta"></div> 
     </div> 
     <div id="expansion"> 
      <div class="exp_bn" id="exp_bn" > 
       <div class="con-pos" id="con-pos" >           
        <div id="videoContainer" class="videoContainer">   
         <video class="video" id="video" autoplay></video> 
        </div>                   
       </div>      
      </div> 
      <div class="endframe"></div> 
      <img id="logo2" type="image/svg+xml" src="" /> 
      <div id="box"></div> 
      <div class="topgrp"> 
       <div id="close-button" class="icon-cross"></div> 
      </div> 
      <div class="bottomgrp"> 
       <div id="replay" class="icon-replay"></div> 
      </div> 
     </div> 
    </div> 
</div> 
+0

你是什麼意思「刪除鼠標懸停的方法,直到我鼠標移開」。當光標超出其內容時,鼠標不會觸發。沒有必要手動執行此操作。關於你的頭銜和最新的問題,請參閱下面的答案。 –

+0

當我是mouseover容器時,它將會展開。當我mouseleave它會崩潰,但是當我擴大我有一個X按鈕,如果我點擊它會崩潰。但一旦它崩潰了,它將再次擴大 –

+1

@MarkusHayner你是否介意添加有問題的代碼。 – Tushar

回答

0

preventDefaultstopPropagationevent對象的本地JS方法。
它不是jQuery的一部分。

你可以簡單地使用它的權利在香草JS:

document.getElementById("link").onclick = function (e) { 
 
    console.log(e.preventDefault); // function preventDefault() { [native code] } 
 
    console.log(e.stopPropagation); // function stopPropagation() { [native code] } 
 
    
 
    e.stopPropagation(); 
 
    e.preventDefault(); 
 
};
<a href="google.com" id="link">Link</a>

+0

在這種情況下,我如何引用鼠標懸停? 'document.getElementById(「container」)。addEventListener(「mouseover」,isClicked); document.getElementById(「container」)。addEventListener(「mouseleave」,collapse); (「close-button」)。addEventListener(「click」,function(e){e.stopPropagation(); e.preventDefault(); collapse();}); –

相關問題