修改jquery里的dialog對話框插件為框架頁(iframe) 的方法
更新時(shí)間:2010年09月14日 02:09:27 作者:
為什么我不直接用modal form來做呢?所以我就做了個(gè)jquery下面dialog的插件,需要引用原來dialog的文件。
jquery有個(gè)很不錯(cuò)的ui插件,dialog插件,他的官方網(wǎng)站上有各種形式的演示:http://jqueryui.com/demos/dialog/ ,可能大家用得比較多的還是它的默認(rèn)模式,具體的用法官網(wǎng)上都有,也有中文的講解地址,我就不再重復(fù)了,最近在弄彈出框架頁,仔細(xì)一看,和dialog插件的modal form 模式很相似,demo演示效果:http://www.lovewebgames.com/addNews.aspx

就是這么個(gè)效果,要進(jìn)行登錄注冊彈出層,至于為什么我不直接用modal form來做呢?因?yàn)槲蚁矚g,你管我。所以我就做了個(gè)jquery下面dialog的插件,需要引用原來dialog的文件。具體代碼如下:
(function ($) {
$.fn.openWidow = function (options) {
var divId = "dialog" + Math.round(Math.random() * 100);
var settings = {
id: divId,
width: 300,
height: 200,
modal: true,
buttons: {
},
show: "explode",
hide: "highlight",
title: "提示",
url: "/test.aspx",
close: function () {
$("#" + this.id).remove();
//debugger
if (document.getElementById(this.id))
document.body.removeChild(document.getElementById(this.id));
}
};
if (options) {
$.extend(settings, options);
}
$("body").append('<div id="' + settings.id + '" title="Dialog Title"><p class="loading"></p></div>');
// Dialog
$('#' + settings.id).dialog({
autoOpen: false,
title: settings.title,
width: settings.width,
height: settings.height,
modal: true,
bgiframe: true,
show: settings.show,
hide: settings.hide,
buttons: settings.buttons,
close: settings.close,
open: function () {
$("#" + settings.id).html('<iframe src="' + settings.url + '" frameborder="0" height="100%" width="100%" id="dialogFrame" scrolling="auto"></iframe>');
},
resizeStop: function () {
$("#dialogFrame").css("width", parseInt($(this).css("width")) - 5);
$("#dialogFrame").css("height", parseInt($(this).css("height")) - 5);
}
});
$('#' + settings.id).dialog("open");
return this;
};
})(jQuery);
我想大家應(yīng)該都還看得懂的,沒啥復(fù)雜的,就是重復(fù)重復(fù)再重復(fù)的工作。甚至很多參數(shù)本身就是dialog的,我只是加了層皮。我相信這個(gè)方法是很多新手都希望用到的,畢竟不是每個(gè)人都喜歡并熟練使用ajax,所以這時(shí)候iframe的用途還是很大的。
并希望有興趣的朋友加入我的Q群:70210212、5678537,平時(shí)多勾通下,有問題不用一個(gè)人想。

就是這么個(gè)效果,要進(jìn)行登錄注冊彈出層,至于為什么我不直接用modal form來做呢?因?yàn)槲蚁矚g,你管我。所以我就做了個(gè)jquery下面dialog的插件,需要引用原來dialog的文件。具體代碼如下:
復(fù)制代碼 代碼如下:
(function ($) {
$.fn.openWidow = function (options) {
var divId = "dialog" + Math.round(Math.random() * 100);
var settings = {
id: divId,
width: 300,
height: 200,
modal: true,
buttons: {
},
show: "explode",
hide: "highlight",
title: "提示",
url: "/test.aspx",
close: function () {
$("#" + this.id).remove();
//debugger
if (document.getElementById(this.id))
document.body.removeChild(document.getElementById(this.id));
}
};
if (options) {
$.extend(settings, options);
}
$("body").append('<div id="' + settings.id + '" title="Dialog Title"><p class="loading"></p></div>');
// Dialog
$('#' + settings.id).dialog({
autoOpen: false,
title: settings.title,
width: settings.width,
height: settings.height,
modal: true,
bgiframe: true,
show: settings.show,
hide: settings.hide,
buttons: settings.buttons,
close: settings.close,
open: function () {
$("#" + settings.id).html('<iframe src="' + settings.url + '" frameborder="0" height="100%" width="100%" id="dialogFrame" scrolling="auto"></iframe>');
},
resizeStop: function () {
$("#dialogFrame").css("width", parseInt($(this).css("width")) - 5);
$("#dialogFrame").css("height", parseInt($(this).css("height")) - 5);
}
});
$('#' + settings.id).dialog("open");
return this;
};
})(jQuery);
我想大家應(yīng)該都還看得懂的,沒啥復(fù)雜的,就是重復(fù)重復(fù)再重復(fù)的工作。甚至很多參數(shù)本身就是dialog的,我只是加了層皮。我相信這個(gè)方法是很多新手都希望用到的,畢竟不是每個(gè)人都喜歡并熟練使用ajax,所以這時(shí)候iframe的用途還是很大的。
并希望有興趣的朋友加入我的Q群:70210212、5678537,平時(shí)多勾通下,有問題不用一個(gè)人想。
您可能感興趣的文章:
- JQuery EasyUI 對話框的使用方法
- jQuery Dialog 彈出層對話框插件
- 基于jQuery的彈出警告對話框美化插件(警告,確認(rèn)和提示)
- jQuery UI Dialog 創(chuàng)建友好的彈出對話框?qū)崿F(xiàn)代碼
- jquery刪除提示框彈出是否刪除對話框
- Confirmer JQuery確認(rèn)對話框組件
- jQuery EasyUI API 中文文檔 - Dialog對話框
- jQuery UI庫中dialog對話框功能使用全解析
- jBox 2.3基于jquery的最新多功能對話框插件 常見使用問題解答
- jquery實(shí)現(xiàn)點(diǎn)擊彈出對話框
相關(guān)文章
jQuery中on綁定事件后引發(fā)的事件冒泡問題如何解決
這篇文章主要介紹了jQuery中on綁定事件后引發(fā)的事件冒泡問題及解決辦法,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看看吧2016-05-05一款jquery特效編寫的大度寬屏焦點(diǎn)圖切換特效的實(shí)例代碼
焦點(diǎn)圖顯示區(qū)域有固定的寬度,當(dāng)前顯示寬度之外是一個(gè)半透明層顯示的其它的焦點(diǎn)圖片,最好的是,此特效兼容ie6以及其它瀏覽器。2013-08-08jQuery 文本框得失焦點(diǎn)的簡單實(shí)例
本篇文章主要是對jQuery 文本框得失焦點(diǎn)的簡單實(shí)例進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02jQuery+css實(shí)現(xiàn)非常漂亮的水平導(dǎo)航菜單效果
這篇文章主要介紹了jQuery+css實(shí)現(xiàn)非常漂亮的水平導(dǎo)航菜單效果,通過each方法遍歷元素再使用removeClass與addClass變換頁面元素樣式實(shí)現(xiàn)導(dǎo)航菜單的切換效果,需要的朋友可以參考下2016-07-07jQuery插件實(shí)現(xiàn)屏蔽單個(gè)元素使用戶無法點(diǎn)擊
屏蔽單個(gè)元素使用戶無法點(diǎn)擊在某些特殊的情況下還是蠻有用的,例如及不舉了,感興趣的朋友可以參考下,希望可以幫助到你2013-04-04picLazyLoad 實(shí)現(xiàn)圖片延時(shí)加載(包含背景圖片)
下面小編就為大家?guī)硪黄猵icLazyLoad 實(shí)現(xiàn)圖片延時(shí)加載(包含背景圖片)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-07-07