JQuery是一個(gè)廣泛使用的JavaScript庫,可以簡化HTML文檔遍歷,事件處理,動(dòng)畫等操作。其中iframe彈窗是常見的彈窗形式,可以在當(dāng)前頁面之上彈出一個(gè)新的頁面來展示內(nèi)容。下面我們使用JQuery實(shí)現(xiàn)一個(gè)iframe彈窗。
首先,我們需要在HTML代碼中準(zhǔn)備一個(gè)用于彈出的鏈接按鈕:
<a href="#" id="open-iframe">打開彈窗</a>
接下來,我們需要在JQuery代碼中定義彈窗的大小和URL路徑:
var $iframe = $('');
然后,我們需要在JQuery代碼中綁定點(diǎn)擊事件,并阻止默認(rèn)鏈接跳轉(zhuǎn)事件:
$('#open-iframe').click(function(event) { event.preventDefault(); });
接下來,我們需要在JQuery代碼中將彈窗添加到頁面中,并實(shí)現(xiàn)彈窗效果:
$iframe.appendTo('body'); $iframe.dialog({ autoOpen: false, modal: true, draggable: false, resizable: false, show: 'blind', hide: 'blind', width: 640, height: 480, position: { my: "center top", at: "center top", of: window }, open: function(event, ui) { $('#open-iframe').blur(); }, close: function(event, ui) { $iframe.attr('src', ''); } }); $('#open-iframe').click(function() { $iframe.dialog('open'); });
代碼解析:
- autoOpen: false - 彈窗初始狀態(tài)為不顯示
- modal: true - 彈窗背景不可用
- draggable: false, resizable: false - 禁止彈窗拖動(dòng)和縮放
- show: 'blind', hide: 'blind' - 定義彈窗的動(dòng)畫效果
- width: 640, height: 480 - 定義彈窗的大小
- position: my: "center top", at: "center top", of: window - 將彈窗置于屏幕中央
- open: function(event, ui) - 彈窗打開時(shí)將焦點(diǎn)從按鈕移開
- close: function(event, ui) - 彈窗關(guān)閉時(shí)清空iframe中的src屬性
- $iframe.dialog('open') - 點(diǎn)擊按鈕打開彈窗
最后,我們只需將JQuery代碼放在