使用jquery制作彈出框效果
非常不錯(cuò)的國(guó)產(chǎn)JS彈出框插件,由前端工程師alien開(kāi)發(fā),提供多種類(lèi)型的自定義對(duì)話(huà)框,使用方法簡(jiǎn)單,瀏覽器兼容性好,支持的彈出框模式有:
alert:普通提示(警告)對(duì)話(huà)框
confirm:詢(xún)問(wèn)(確認(rèn))對(duì)話(huà)框
message:簡(jiǎn)單消息對(duì)話(huà)框(無(wú)title、無(wú)按鈕)
iframe:在對(duì)話(huà)框中嵌入一個(gè)iframe
tip:帶有小三角指向的小tip
dialog:最基礎(chǔ)的自定義對(duì)話(huà)框
var jDialogId = [];
(function ($) {
$.jDialog = function (options) {
var id = parseInt(Math.floor(Math.random() * 1000 + 1));
while ($.inArray(id, jDialogId) != -1) {
id = parseInt(Math.floor(Math.random() * 1000 + 1));
}
jDialogId.push(id);
var defaults = {
title:"",
content: "這是一個(gè)JasUI-Dialog插件",
width: 350,
height: 0,
timer: 0,
showbuttons:false,
buttons: [],
okval: "確認(rèn)",
ok: function () { return false;},
cancelval: "取消",
cancel: function () { return false; },
showclose:true,
close: function () { },
theme:""
};
var options = $.extend(defaults, options);
var _objdiv = "<div id='j-dialog-" + id + "' class='j-dialog ";
if (options.theme != "") {
_objdiv = _objdiv + "j-dialog-" + options.theme + "'>";
} else {
_objdiv = _objdiv + "'>";
}
_objdiv = _objdiv + "<div class='j-dialog-header'>";
if (options.showclose) {
_objdiv = _objdiv + "<a href='javascript:void(0)' class='j-close j-dialog-close'></a>"
}
if (options.title != "") {
_objdiv = _objdiv + "<h5 class='j-dialog-title'>" + options.title + "</h5>";
}
_objdiv = _objdiv + "</div>";
_objdiv = _objdiv + "<p class='j-dialog-content'>" + options.content + "</p>";
if (options.showbuttons) {
_objdiv = _objdiv + "<div class='j-dialog-footer'>";
$.each(options.buttons,function(i,value) {
_objdiv = _objdiv + "<a class='j-button' data-id='" + i + "'>" + value.title + "</a>";
})
_objdiv = _objdiv + "<a class='j-button j-button-primary j-dialog-ok'>" + options.okval + "</a>";
_objdiv = _objdiv + "<a class='j-button j-dialog-cancel'>" + options.cancelval + "</a>";
_objdiv = _objdiv + "</div>";
};
_objdiv=_objdiv+"</div>";
$("body").append(_objdiv);
var _obj = $('#j-dialog-' + id)
if (options.height>0) {
_obj.css("height", options.height);
}
_obj.css("width", options.width);
_obj.css("margin-top", '-' + (options.height / 2) + 'px');
_obj.css("margin-left", '-' + (options.width / 2) + 'px');
_obj.animate({ top: '30%',opacity:1 }, 0);
if (options.showclose) {
_obj.find('.j-dialog-close').on('click', function () {
$.jDialogRemove(id, options.close);
})
_obj.find('.j-dialog-ok').on('click', function () {
if (!options.ok()) {
$.jDialogRemove(id, options.close);
}
})
_obj.find('.j-dialog-cancel').on('click', function () {
if (!options.cancel()) {
$.jDialogRemove(id, options.close);
}
})
}
if (options.showbuttons) {
$.each(options.buttons, function (i, value) {
_obj.find("[data-id=" + i + "]").on('click', function () {
if (!value.callback()) {
$.jDialogRemove(id, options.close);
}
})
})
};
if (options.timer> 0) {
setTimeout(function () {
$.jDialogRemove(id,options.close);
}, options.timer);
}
return id;
},
$.jDialogRemove = function (id, callback) {
if ($.inArray(id, jDialogId)!=-1) {
jDialogId.splice($.inArray(id, jDialogId), 1);
$('#j-dialog-' + id).animate({ top: '0', opacity: 0 }, 500, function () {
$('#j-dialog-' + id).remove();
if (callback) {
callback();
}
});
}
},
$.jTip = function (options) {
var defaults = {
content: "這是一個(gè)JasUI-Dialog插件",
width: 200,
timer: 0,
showclose: false,
close: function () { },
theme: ""
};
var options = $.extend(defaults, options);
$.jDialog(options);
},
$.jFloatText = function (txt,color,posX,posY) {
var $i = $("<b>").text(txt);
var x = '50%', y = '40%';
var _color = '#E94F06';
if (color) {
_color= color;
}
if (posX) {
x = posX;
}
if (posY) {
y = posY;
}
$i.css({ top: 200, left: x, position: "absolute", color: "#E94F06" });
$("body").append($i);
$i.animate({ top: 20, opacity: 0}, 1500, function () {
$i.remove();
});
}
})(jQuery);
以上所述就是本文的全部?jī)?nèi)容了,希望能夠?qū)Υ蠹沂炀毷褂胘Query有所幫助。
- 使用jQueryMobile實(shí)現(xiàn)滑動(dòng)翻頁(yè)效果的方法
- jquery中ajax使用error調(diào)試錯(cuò)誤的方法
- jQuery使用load()方法載入另外一個(gè)網(wǎng)頁(yè)文件內(nèi)的指定標(biāo)簽內(nèi)容到div標(biāo)簽的方法
- jQuery使用CSS()方法給指定元素同時(shí)設(shè)置多個(gè)樣式
- jQuery使用toggleClass方法動(dòng)態(tài)添加刪除Class樣式的方法
- jQuery使用addClass()方法給元素添加多個(gè)class樣式
- jQuery使用before()和after()在元素前后添加內(nèi)容的方法
- jQuery使用attr()方法同時(shí)設(shè)置多個(gè)屬性值用法實(shí)例
- jQuery獲取json后使用zy_tmpl生成下拉菜單
- 使用Jquery實(shí)現(xiàn)每日簽到功能
- jQuery彈出層插件Lightbox_me使用指南
- jQuery驗(yàn)證插件validation使用指南
- Jquery 效果使用詳解
相關(guān)文章
jQuery 實(shí)現(xiàn)ajax傳入?yún)?shù)含有特殊字符的方法總結(jié)
在做ajax登錄時(shí)候遇到的一個(gè)問(wèn)題,當(dāng)傳入?yún)?shù)含有特殊字符,比如:“$'#@”等。參數(shù)傳遞會(huì)有問(wèn)題,無(wú)法正確獲取。本文章向碼農(nóng)介紹jQuery ajax特殊字符參數(shù)解決方法,需要的朋友可以參考一下。2016-10-10
jQuery+PHP打造滑動(dòng)開(kāi)關(guān)效果
這篇文章主要介紹了jQuery+PHP打造滑動(dòng)開(kāi)關(guān)效果,實(shí)現(xiàn)類(lèi)似360安全衛(wèi)士防火墻開(kāi)啟關(guān)閉的開(kāi)關(guān),非常的實(shí)用,這里推薦給大家2014-12-12
JQuery中$.ajax()方法參數(shù)詳解及應(yīng)用
JQuery中$.ajax()方法想必大家并不陌生吧,在本文將為大家介紹下其參數(shù)及應(yīng)用示例,感興趣的朋友不要錯(cuò)過(guò)2013-12-12
jQuery快速上手:寫(xiě)jQuery與直接寫(xiě)JS的區(qū)別詳細(xì)解析
jQuery代碼具體的寫(xiě)法和原生的Javascript寫(xiě)法在執(zhí)行常見(jiàn)操作時(shí)的區(qū)別如下所示。需要的朋友可以過(guò)來(lái)參考下2013-08-08
jquery實(shí)現(xiàn)圖片上傳前本地預(yù)覽
這篇文章主要為大家詳細(xì)介紹了jquery實(shí)現(xiàn)圖片上傳前本地預(yù)覽功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
JQuery實(shí)現(xiàn)簡(jiǎn)單的圖片滑動(dòng)切換特效
基于jQuery的一款圖片展示特效代碼,鼠標(biāo)移到圖片上方懸停時(shí)會(huì)自動(dòng)切換成文字簡(jiǎn)單顯示,適合做圖片集展示,推薦給大家。2015-11-11
從零學(xué)jquery之如何使用回調(diào)函數(shù)
回調(diào)函數(shù)指的是被調(diào)用者完成處理后自動(dòng)回調(diào)調(diào)用者預(yù)先傳遞的函數(shù)。2014-05-05
使用jquery實(shí)現(xiàn)鼠標(biāo)滑過(guò)彈出更多相關(guān)信息層附源碼下載
當(dāng)要在有限的空間展示更多的信息時(shí),我們經(jīng)常會(huì)采取鼠標(biāo)滑過(guò)彈出更多相關(guān)信息層,提高互動(dòng)性。尤其可以應(yīng)用在公司照片墻、招聘網(wǎng)站求職者信息展示等等場(chǎng)景,本文給大家分享使用jquery實(shí)現(xiàn)鼠標(biāo)滑過(guò)彈出更多相關(guān)信息層附源碼下載,感興趣的朋友參考下2015-11-11

