DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> 使用BootStrap實現懸浮窗口的效果
使用BootStrap實現懸浮窗口的效果
編輯:關於JavaScript     

經常玩社群網站的想必對這樣一種場景很常見,如圖:

鼠標停在某個超鏈接上,然後會出現一個懸浮框,內容時該賬號的一些信息。

剛好最近在做一些前端的東東,涉及到類似的需求。——鼠標懸停,出現一個懸浮框,懸浮框描述一些具體信息。之前其實參考了網上的一篇文章,但覺得有點兒過於復雜。。而發現:神奇的 bootstrap就自帶了這個功能。所以就用bootstrap的popover插件做了,效果還不錯。雖然挺簡單的,但還是紀念一下……

定義一個超鏈接,同時需注意相應頁面的必要的css和js必須引入:

Html代碼

<link href="css/bootstrap.css" rel="stylesheet" /> 
<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script> 
<script type="text/javascript" src="js/bootstrap.min.js"></script> 
<a href="#" class="bind_hover_card" data-toggle="popover" data-placement="bottom" data-trigger="hover"><img class="commentAvatarImage" src="img/social_dribbble.png" /></a>  

data-toggle="popover"屬性則為該超鏈接綁定彈窗效果,data-placement="bottom"指定彈窗相對於超鏈接顯示的位置,data-trigger="hover"則是關鍵,指定懸浮時觸發彈窗顯示。。

關於bootstrap之popover插件的一些常見屬性如下:

選項名稱 類型/默認值 Data 屬性名稱 描述

animation boolean
默認值:true data-animation 向彈出框應用 CSS 褪色過渡效果。 html boolean
默認值:false data-html 向彈出框插入 HTML。如果為 false,jQuery 的 text 方法將被用於向 dom 插入內容。如果您擔心 XSS 攻擊,請使用 text。 placement string|function
默認值:top data-placement 規定如何定位彈出框(即 top|bottom|left|right|auto)。
當指定為 auto 時,會動態調整彈出框。例如,如果 placement 是 "auto left",彈出框將會盡可能顯示在左邊,在情況不允許的情況下它才會顯示在右邊。 selector string
默認值:false data-selector 如果提供了一個選擇器,彈出框對象將被委派到指定的目標。 title string | function
默認值:'' data-title 如果未指定 title 屬性,則 title 選項是默認的 title 值。 trigger string
默認值:'hover focus' data-trigger 定義如何觸發彈出框: click| hover | focus | manual。您可以傳遞多個觸發器,每個觸發器之間用空格分隔。 delay number | object
默認值:0 data-delay 延遲顯示和隱藏彈出框的毫秒數 - 對 manual 手動觸發類型不適用。如果提供的是一個數字,那麼延遲將會應用於顯示和隱藏。如果提供的是對象,結構如下所示:

delay:{ show:500, hide:100}
container string | false
默認值:false data-container 向指定元素追加彈出框。
實例: container: 'body'

常見方法:

方法描述實例Options: .popover(options)向元素集合附加彈出框句柄。

$().popover(options)
Toggle: .popover('toggle')切換顯示/隱藏元素的彈出框。
$('#element').popover('toggle')
Show: .popover('show')顯示元素的彈出框。
$('#element').popover('show')
Hide: .popover('hide')隱藏元素的彈出框。
$('#element').popover('hide')
Destroy: .popover('destroy')隱藏並銷毀元素的彈出框。
$('#element').popover('destroy')

好了,下面重點是Js部分。

$(function() { 
  $("[data-toggle='popover']").popover({ 
    html : true,  
    title: title(),  
    delay:{show:500, hide:1000}, 
    content: function() { 
     return content();  
    }  
  }); 
}); 

 而我們來模擬下動態加載懸浮框的標題和內容:

//模擬動態加載標題(真實情況可能會跟後台進行ajax交互) 
function title() { 
  return '田喜碧Hebe(節制的人生)'; 
} 
 
//模擬動態加載內容(真實情況可能會跟後台進行ajax交互) 
function content() { 
  var data = $("<form><ul><li><span aria-hidden='true' class='icon_globe'></span> <font>粉絲數:</font>7389223</li>" + 
       "<li><span aria-hidden='true' class='icon_piechart'></span> <font>關注:</font>265</li>" + 
       "<li><span aria-hidden='true' class='icon_search_alt'></span> <font>微博:</font>645</li>" + 
       "<li><span aria-hidden='true' class='icon_pens_alt'></span> <font>所在地:</font>台灣</li>" + 
       "<input id='btn' type='button' value='關注' onclick='test()'/></form>"); 
   
  return data; 
} 
//模擬懸浮框裡面的按鈕點擊操作 
function test() { 
  alert('關注成功'); 
} 

查看效果:

以上所述是小編給大家介紹的使用BootStrap實現懸浮窗口的效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved