2009-07-27 113 views
0

在Espn.com上的this page中,如果您轉到右上角並將鼠標懸停在「myESPN」上方,會出現一個內聯彈出窗口(如果這是它的名稱) (以這種方式看起來連接到初始按鈕)並允許用戶登錄到該站點。使用Javascript在MouseOver上方顯示其他元素上方的Html元素

在html中,它看起來像是一個隱藏的div,當鼠標移動到某個元素上時,該div被顯示並被推到前面,只要鼠標停留在調用元素上,新顯示的元素本身。

我期待着做類似的事情。但是,在用Firebug稍微摸索之後,我無法確定它是如何完成的。我認爲它涉及的JavaScript,也可能jquery - 任何人都可以幫助具體實施?

回答

1

你需要的是一個絕對定位的div元素,它定位你希望它出現的方式。然後用style =「display:none;」隱藏它,在右邊的元素的鼠標懸停上顯示它。使用jQuery那會是:

HTML: 
<div id="layer" style="display: none; position: absolute; top: 10px; left: 300px;">something</div> 
 
Javascript: 
$('#elementToHover').mouseover(function() { 
    clearTimeout(timeout); 
    $('#layer').show(); 
}); 

編輯:
來隱藏它:

 
var timeout; 
$('#elementToHover').mouseout(function() { 
    timeout = setTimeout("hide()", 1000); 
}); 
$('#layer').mouseover(function() { 
    clearTimeout(timeout); 
}); 
$('#layer').mouseout(function() { 
    timeout = setTimeout("hide()", 1000); 
}); 
function hide() { 
    $('#layer').hide(); 
} 

或類似的東西...

+0

這會顯示出來。但是,當鼠標離開第一個元素或顯示的元素時,爲了隱藏它,我需要做些什麼? – 2009-07-27 10:56:28

相關問題