44
A
回答
80
var mouseX;
var mouseY;
$(document).mousemove(function(e) {
mouseX = e.pageX;
mouseY = e.pageY;
});
$(".classForHoverEffect").mouseover(function(){
$('#DivToShow').css({'top':mouseY,'left':mouseX}).fadeIn('slow');
});
上面的函數將使DIV出現在頁面上可能存在的任何鏈接上。當鏈接懸停時,它會慢慢消失。您也可以使用.hover()。從那裏DIV會留下來,所以如果你想在DIV消失,當鼠標移開,然後,
$(".classForHoverEffect").mouseout(function(){
$('#DivToShow').fadeOut('slow');
});
如果DIV已經定位,你可以簡單地使用
$('.classForHoverEffect').hover(function(){
$('#DivToShow').fadeIn('slow');
});
而且請記住,您的DIV格式需要設置爲display:none;
才能淡入或顯示。
-2
<script type="text/javascript" language="JavaScript">
var cX = 0;
var cY = 0;
var rX = 0;
var rY = 0;
function UpdateCursorPosition(e) {
cX = e.pageX;
cY = e.pageY;
}
function UpdateCursorPositionDocAll(e) {
cX = event.clientX;
cY = event.clientY;
}
if (document.all) {
document.onmousemove = UpdateCursorPositionDocAll;
} else {
document.onmousemove = UpdateCursorPosition;
}
function AssignPosition(d) {
if (self.pageYOffset) {
rX = self.pageXOffset;
rY = self.pageYOffset;
} else if (document.documentElement && document.documentElement.scrollTop) {
rX = document.documentElement.scrollLeft;
rY = document.documentElement.scrollTop;
} else if (document.body) {
rX = document.body.scrollLeft;
rY = document.body.scrollTop;
}
if (document.all) {
cX += rX;
cY += rY;
}
d.style.left = (cX + 10) + "px";
d.style.top = (cY + 10) + "px";
}
function HideContent(d) {
if (d.length < 1) {
return;
}
document.getElementById(d).style.display = "none";
}
function ShowContent(d) {
if (d.length < 1) {
return;
}
var dd = document.getElementById(d);
AssignPosition(dd);
dd.style.display = "block";
}
function ReverseContentDisplay(d) {
if (d.length < 1) {
return;
}
var dd = document.getElementById(d);
AssignPosition(dd);
if (dd.style.display == "none") {
dd.style.display = "block";
} else {
dd.style.display = "none";
}
}
//-->
</script>
<a onmouseover="ShowContent('uniquename3'); return true;" onmouseout="HideContent('uniquename3'); return true;" href="javascript:ShowContent('uniquename3')">
[show on mouseover, hide on mouseout]
</a>
<div id="uniquename3" style="display:none;
position:absolute;
border-style: solid;
background-color: white;
padding: 5px;">
Content goes here.
</div>
7
您不需要創建$(document).mousemove(function(e) {})
來處理鼠標x,y。獲取$.hover
函數中的事件,並從那裏獲得鼠標的x和y位置。看到下面的代碼:
$('foo').hover(function(e){
var pos = [e.pageX-150,e.pageY];
$('foo1').dialog("option", "position", pos);
$('foo1').dialog('open');
},function(){
$('foo1').dialog('close');
});
9
有很多使用JQuery檢索鼠標座標的例子,但沒有解決我的問題。
我網頁的正文是1000個像素寬,我居中在用戶的瀏覽器窗口的中間。
body {
position:absolute;
width:1000px;
left: 50%;
margin-left:-500px;
}
現在,在我的JavaScript代碼中,當用戶右鍵單擊我的頁面時,我想要一個div出現在鼠標位置。
問題是,只是使用e.pageX值不是很對。如果我將瀏覽器窗口的大小調整爲大約1000像素,它會很好地工作。然後,彈出格將出現在正確的位置。
但是,如果將我的瀏覽器窗口的大小增加到1200像素寬,那麼div將出現大約100像素到用戶點擊的位置的右邊。
解決方案是將e.pageX與body元素的邊界矩形相結合。當用戶改變他們的瀏覽器窗口的大小,「左」的主體元素的變化值,我們需要考慮到這一點:
// Temporary variables to hold the mouse x and y position
var tempX = 0;
var tempY = 0;
jQuery(document).ready(function() {
$(document).mousemove(function (e) {
var bodyOffsets = document.body.getBoundingClientRect();
tempX = e.pageX - bodyOffsets.left;
tempY = e.pageY;
});
})
唷。我花了一段時間來修復!我希望這對其他開發者有用!
相關問題
- 1. 如何獲得相對於幀的鼠標指針位置
- 2. 獲取鼠標指針相對於某些div的座標
- 3. 查找相對於svg元素的鼠標指針位置
- 4. 相對於div的鼠標位置?或div位置相對於查看窗口?
- 5. 如何使用actionscript 3使對象相對於鼠標指針移動?
- 6. 如何使相對於鼠標位置的標籤位置
- 7. 如何獲得座標相對於鼠標位置的位置?
- 8. 獲取相對於元素的鼠標指針的x和y位置
- 9. 如何獲取鼠標指針位置使用JavaScript的Internet Explorer?
- 10. jquery鼠標相對窗口的位置
- 11. 相對於原點的鼠標位置
- 12. 如何使用jQUERY使圖像跟隨鼠標指針?
- 13. 如何使放大的鼠標指針
- 14. WinRT:如何確定當前的鼠標/指針位置
- 15. 定位相對股利鼠標位置
- 16. 如何使用C#在ASP.Net中獲取鼠標指針位置?
- 17. 我該如何計算鼠標位置相對於使用Javascript/jQuery的預定義點的座標
- 18. 使用jQuery來移動基於鼠標位置的div背景
- 19. 如何獲得鼠標座標相對於父div? Javascript
- 20. 使用jQuery拖動的固定鼠標指針
- 21. 定位相對於鼠標的滾動位置
- 22. 如何檢測鼠標指針的座標在一個div
- 23. 的JQuery/CSS:使用鼠標COORDS和位置追加DIV:絕對
- 24. 指向鼠標位置jquery
- 25. 使用css或jquery自定義鼠標指針
- 26. jQuery相對於鼠標的位置元素
- 27. 獲取鼠標指針下的DIV列表(鼠標事件)
- 28. 如何在div中相對定位div?
- 29. 使用鼠標指針標記邊緣
- 30. 相對指針位置
http://stackoverflow.com/questions/15494357/want-to-show-div-just-under-the-link-using-jquery-when-user-click-on-link http://堆棧溢出。com/questions/15635270 /奇怪的行爲的下拉菜單創建的jquery – Thomas 2013-03-28 08:31:18