最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript 實用的文字鏈提示框效果

 更新時間:2010年06月30日 15:08:43   投稿:mdxy-dxy  
鼠標滑過文章中的鏈接文字,要在相應位置彈出提示框,提示框的樣式由css來控制,高度自適應;鼠標可以點擊提示框的中的鏈接,滑離提示框時,框自動消失

效果要基本實現(xiàn)以下功能:
(1)鼠標滑過文章中的鏈接文字,要在相應位置彈出提示框,提示框的樣式由css來控制,高度自適應;鼠標可以點擊提示框的中的鏈接,滑離提示框時,框自動消失;
(2)把提示框的位置控制在文本域范圍之內(nèi),如果鏈接文字處在文本域左側(cè),提示框要居右顯示,使其不會出離文本域;反之,如果鏈接文字處在文本域右側(cè),提示框要居左顯示;
(3)如果文本域內(nèi)容很多,而鏈接文字恰巧處于瀏覽器底部,為了使提示框不出離于瀏覽器的可視范圍,提示框的位置要自動調(diào)整到鏈接文字的上面;

1.css

復制代碼 代碼如下:

.main{width:950px; border:#9C3 1px solid; margin:0 auto; padding:15px; background-color:#fff; line-height:25px;font-size:14px; position:relative;}
span{border:#70bce4 2px solid; display:block; position:absolute; background-color:#FFF; padding:5px 10px; font-size:12px; width:200px; display:none;}
.cur{color:#900;}

2.js
復制代碼 代碼如下:

//獲取對象元素的函數(shù);
function $a(id,tag){var re=(id&&typeof id!="string")?id:document.getElementById(id);if(!tag){return re;}else{return re.getElementsByTagName(tag);}}
function tips(){
//獲取文本域中的a元素列表;
var article=$a("article","a")
for(i=0;i<article.length;i++){
//遍歷a元素,不包含類"cur"的a元素將不會執(zhí)行之后的代碼;
if(article[i].className.indexOf("cur")==-1) continue;
article[i].onmouseover=function(e){
//獲取鼠標指針在瀏覽器可視區(qū)域的坐標,不受文檔內(nèi)容影響;
var e=e||event;
posX = e.clientX;
posY = e.clientY;
//獲取瀏覽器可視區(qū)域高度;
var bodyhe=document.documentElement.clientHeight;
var parwidth=$a("article").offsetWidth;
var tipbox=get_nextSibling(this);
var boxlist=$a("article","span")
//設置文本區(qū)域中的span提示框均為隱藏狀態(tài);
for(j=0;j<boxlist.length;j++){
boxlist[j].style.display="none";
boxlist[j].innerHTML="調(diào)入后臺數(shù)據(jù)"
}
//設置當前的提示框顯示;
tipbox.style.display="block";
var w=tipbox.offsetWidth-this.offsetWidth;
/*
以id為article的div添加了相對定位position:relative,所以它已經(jīng)是提示框的父級;
控制彈出框的顯示位置;
*/
tipbox.style.left=(this.offsetLeft>parwidth/2?this.offsetLeft-w:this.offsetLeft)+"px";
tipbox.style.top=(posY+tipbox.offsetHeight>bodyhe?this.offsetTop-tipbox.offsetHeight:document.all?this.offsetTop+15:this.offsetTop+this.offsetHeight)+"px";
tipbox.onmouseover=function(){this.style.display="block";}
tipbox.onmouseout=this.onmouseout=function(){tipbox.style.display="none";}
}
}
}
//獲取對象元素的下一個標簽節(jié)點;
function get_nextSibling(n){
var x=n.nextSibling;
while (x.nodeType!=1){
x=x.nextSibling;
}
return x;
}

貼出源文件代碼 感興趣的朋友可以測試一下,有問題可留言 @&@
復制代碼 代碼如下:

<!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>提示框效果</title>
<style type="text/css">
.main{width:950px; border:#9C3 1px solid; margin:0 auto; padding:15px; background-color:#fff; line-height:25px;font-size:14px; position:relative;}
span{border:#70bce4 2px solid; display:block; position:absolute; background-color:#FFF; padding:5px 10px; font-size:12px; width:200px; display:none;}
.cur{color:#900;}
</style>
</head>
<body onload="tips();">
<br />
<br />
<br />
<br />
<div class="main" id="article">
本人的曖昧態(tài)度也為此事件更增添了一份迷霧。
</div>
<script type="text/javascript">
function $a(id,tag){var re=(id&&typeof id!="string")?id:document.getElementById(id);if(!tag){return re;}else{return re.getElementsByTagName(tag);}}
function tips(){
var article=$a("article","a")
for(i=0;i<article.length;i++){
if(article[i].className.indexOf("cur")==-1) continue;
article[i].onmouseover=function(e){
var e=e||event;
posX = e.clientX;
posY = e.clientY;
var bodyhe=document.documentElement.clientHeight;
var parwidth=$a("article").offsetWidth;
var tipbox=get_nextSibling(this);
var boxlist=$a("article","span")
for(j=0;j<boxlist.length;j++){
boxlist[j].style.display="none";
boxlist[j].innerHTML="調(diào)入后臺數(shù)據(jù)"
}
tipbox.style.display="block";
var w=tipbox.offsetWidth-this.offsetWidth;
tipbox.style.left=(this.offsetLeft>parwidth/2?this.offsetLeft-w:this.offsetLeft)+"px";
tipbox.style.top=(posY+tipbox.offsetHeight>bodyhe?this.offsetTop-tipbox.offsetHeight:document.all?this.offsetTop+15:this.offsetTop+this.offsetHeight)+"px";
tipbox.onmouseover=function(){this.style.display="block";}
tipbox.onmouseout=this.onmouseout=function(){tipbox.style.display="none";}
}
}
}
function get_nextSibling(n){
var x=n.nextSibling;
while (x.nodeType!=1){
x=x.nextSibling;
}
return x;
}
</script>
</body>
</html>

相關(guān)文章

  • JavaScript 點擊插入文字

    JavaScript 點擊插入文字

    JavaScript點擊插入文字,在一段文字的任意處點擊,會將你時先準備好的文字插入到一段文字中,可能大家不怎么用到,不過感覺很奧妙,希望高手改進成自己想要的效果。
    2009-10-10
  • 簡介內(nèi)容超出部分文字隱藏省略的特效(可顯示)

    簡介內(nèi)容超出部分文字隱藏省略的特效(可顯示)

    如果字數(shù)找過特定的字符數(shù),那么超過這個字符數(shù)后的文字就顯示省略號... 然后出現(xiàn)【展開】或省略號,點擊之后就出現(xiàn)全部內(nèi)容
    2011-10-10
  • javascript 灑脫飄動的文字

    javascript 灑脫飄動的文字

    飄動的文字,看著還挺自在、灑脫,網(wǎng)上經(jīng)常見的東西,原來是這么實現(xiàn)的,奉獻給大家哦。
    2009-10-10
  • javascript上下左右定時滾動插件

    javascript上下左右定時滾動插件

    在網(wǎng)上找到的,我認為最為方便的一段定時滾動代碼,找了很多其他的總是有這樣那樣的問題,好不容易找到的,就分享一下。
    2010-06-06
  • JS CSS制作飽含熱情的鑲邊文字閃爍特效

    JS CSS制作飽含熱情的鑲邊文字閃爍特效

    JS+CSS制作的文字閃爍特效,飽含熱情的鑲邊文字,能讓人感覺到你的熱情,同時也可以用作提示語,能充分引起人們的關(guān)注。
    2009-10-10
  • 文字來回上下移動或跳動的代碼

    文字來回上下移動或跳動的代碼

    JavaScript實現(xiàn)文字 上下跳動,或上下移動,比較普通的效果,類似QQ聊天窗口抖動一樣的效果,只不過這里是圖片而已。
    2009-11-11
  • Js制作點擊輸入框時默認文字消失的效果

    Js制作點擊輸入框時默認文字消失的效果

    為了提高用戶體驗和易用度,一些設計師會對網(wǎng)頁中用戶經(jīng)常用的東西進行優(yōu)化,比如輸入框。一般的輸入框是怎樣優(yōu)化的呢?從用戶體驗的角度出發(fā),簡化用戶使用步驟,讓用戶用得更方便就是提高了易用性
    2015-09-09
  • Js+CSS 文字漸隱漸現(xiàn)顯示

    Js+CSS 文字漸隱漸現(xiàn)顯示

    JavaScript文字漸隱漸現(xiàn)顯示,更專業(yè)的說法叫淡入淡出,最開始用于視頻蒙太奇制作及Flash動畫上,現(xiàn)在用到文字上也不是什么稀罕事了.
    2009-10-10
  • 仿打字特效的JS逐字出現(xiàn)的信息文字

    仿打字特效的JS逐字出現(xiàn)的信息文字

    JavaScript編寫的文字特效,看似打字的效果,讓文字逐個出現(xiàn),你可以以這個為基礎給你心愛的人寫一段祝福的語,這的確挺合適。
    2009-10-10
  • JavaScript 仿歌詞效果

    JavaScript 仿歌詞效果

    這是一個文字疊加滾動效果,當然離不開JavaScript了,看上去像MTV的歌詞效果,用兩種顏色的文字疊加形成的效果,用Js去控制時間和顏色,這個當然你可以自己修改噢!
    2009-10-10

最新評論

鄱阳县| 翼城县| 寿阳县| 中西区| 怀化市| 绵竹市| 新沂市| 凌海市| 郎溪县| 景泰县| 华蓥市| 康定县| 荣昌县| 东安县| 即墨市| 诸城市| 洪湖市| 武穴市| 济阳县| 剑阁县| 含山县| 太湖县| 郴州市| 信丰县| 岱山县| 海林市| 马公市| 克拉玛依市| 重庆市| 漯河市| 黔南| 洛南县| 苗栗市| 壤塘县| 团风县| 来安县| 小金县| 青州市| 察隅县| 施秉县| 综艺|