jquery實(shí)現(xiàn)可自動判斷位置的彈出層效果代碼
本文實(shí)例講述了jquery實(shí)現(xiàn)可自動判斷位置的彈出層效果代碼。分享給大家供大家參考。具體如下:
這是一款jquery實(shí)現(xiàn)的智能彈出層效果,位置可以自適應(yīng),當(dāng)層靠右邊顯示時(shí)自動往左移。初次運(yùn)行時(shí)請按F5刷新,載入遠(yuǎn)程jQuery后才能看到效果,點(diǎn)擊鼠標(biāo)左鍵,彈出層將出現(xiàn),在最右邊點(diǎn)擊時(shí)層自動往左移。
運(yùn)行效果截圖如下:

在線演示地址如下:
http://demo.jb51.net/js/2015/jquery-auto-check-pos-alert-dlg-demo/
具體代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jquery彈出層浮動層代碼</title>
<script src="jquery1.3.2.js" type="text/javascript"></script>
<style>
*{ margin:0; padding:0}
body{ margin:0; padding:0; font-size:12px}
ul,li{ list-style:none}
ul{position:relative;top:-3px; left:-3px;border:1px solid #ccc; background:#fff;}
li{height:23px;line-height:23px;cursor:default; padding:0 0 0 10px}
li.current{background:#eee}
.wrap{ width:158px; background:#eee; position:absolute;}
</style>
<script type="text/javascript">
$(function(){
$(".wrap").hide();
var objW=$(".wrap").width();
var objH=$(".wrap").height();
$(document).mousedown(function(e){
var selfX=objW+e.pageX;
var selfY=objH+e.pageY
var bodyW=document.documentElement.clientWidth+document.documentElement.scrollLeft;
var bodyH=document.documentElement.clientHeight+document.documentElement.scrollTop;
if(selfX>bodyW && selfY>bodyH){
$(".wrap").css({top:(bodyH-objH),left:(bodyW-objW)}).show();
}else if(selfY>bodyH){
$(".wrap").css({top:(bodyH-objH),left:e.pageX}).show();
}else if(selfX>bodyW){
$(".wrap").css({top:e.pageY,left:(bodyW-objW)}).show();
}else{
$(".wrap").css({top:e.pageY,left:e.pageX}).show();
}
})
$("li").hover(function(){
$(this).addClass("current");
},function(){
$(this).removeClass("current");
}).click(function(){
alert($(this).text())
$(this).parent().parent().hide();
})
})
</script>
</head>
<body>
<div style="height:800px;width:900px"> </div>
<div style="position:absolute;top:300px;left:300px"><span style="color:#f00;font-size:28px">請按F5刷新,才能看到效果,</span><br>點(diǎn)擊鼠標(biāo)左鍵,彈出層,<br>在最右邊點(diǎn)擊時(shí)層自動往左移</div>
<div class="wrap">
<ul onmousedown="event.cancelBubble = true">
<li>連江</li>
<li>寧德</li>
<li>福州</li>
<li>廈門</li>
<li>北京</li>
</ul>
</div>
</body>
</html>
希望本文所述對大家的jQuery程序設(shè)計(jì)有所幫助。
- Jquery+CSS3實(shí)現(xiàn)一款簡潔大氣帶滑動效果的彈出層
- js實(shí)現(xiàn)仿Discuz文本框彈出層效果
- jquery實(shí)現(xiàn)彈出層登錄和全屏層注冊特效
- JS實(shí)現(xiàn)仿微博可關(guān)閉彈出層效果
- JS實(shí)現(xiàn)常見的TAB、彈出層效果(TAB標(biāo)簽,斑馬線,遮罩層等)
- jquery實(shí)現(xiàn)仿新浪微博帶動畫效果彈出層代碼(可關(guān)閉、可拖動)
- jQuery Mobile彈出窗、彈出層知識匯總
- jQuery+CSS3+Html5實(shí)現(xiàn)彈出層效果實(shí)例代碼(附源碼下載)
相關(guān)文章
jQuery實(shí)現(xiàn)點(diǎn)擊標(biāo)題輸入詳細(xì)信息
點(diǎn)擊標(biāo)題,輸入詳細(xì)信息,點(diǎn)擊確定按鈕,完成,把不必要的選項(xiàng)隱藏,當(dāng)用戶真正有需要的時(shí)候,在顯示出來2013-04-04
jQuery.position()方法獲取不到值的安全替換方法
這篇文章主要介紹了jQuery.position()方法獲取不到值的安全替換方法,本文給出了一種變通的方法,用.offset()來換算,需要的朋友可以參考下2015-03-03
jQuery實(shí)現(xiàn)表單步驟流程導(dǎo)航代碼分享
這篇文章主要介紹了jQuery實(shí)現(xiàn)表單步驟流程導(dǎo)航,代碼實(shí)現(xiàn)效果簡單精致,推薦給大家,有需要的小伙伴可以參考下。2015-08-08
輕量級網(wǎng)頁遮罩層jQuery插件用法實(shí)例
這篇文章主要介紹了輕量級網(wǎng)頁遮罩層jQuery插件用法,實(shí)例分析了jquery遮罩層插件的定義、功能及使用方法,非常簡單實(shí)用,需要的朋友可以參考下2015-07-07
jQuery實(shí)現(xiàn)自動調(diào)用和觸發(fā)某個事件的方法
這篇文章主要介紹了jQuery實(shí)現(xiàn)自動調(diào)用和觸發(fā)某個事件的方法,結(jié)合實(shí)例形式列舉分析了jQuery事件觸發(fā)的常見操作技巧,需要的朋友可以參考下2016-11-11
各式各樣的導(dǎo)航條效果css3結(jié)合jquery代碼實(shí)現(xiàn)
這篇文章主要為大家分享了css3結(jié)合jquery代碼實(shí)現(xiàn)各式各樣的導(dǎo)航條效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09

