前幾天在增加修改功能時,突然用到一個提示函數(shù),有點不理解,看了他的由來后果斷做下筆記,感覺這在以后的開發(fā)中肯定還是要用的上的。有些地方不是很理解,在以后慢慢糾正、查補。
Htm頁面中用的js跳轉(zhuǎn):
$("#lyy_real").click(function(){
$.post("api/realnamechange.php",
{uname:$("#uname").val(),uid:$("#uid").val(),realname:$("#realname_lyy").val()},
function(data){ 數(shù)據(jù)返回執(zhí)行彈出框,并刷新當前頁面。
popup.open(data, 'confirm', 'home.php?mod=space&uid='+$("#uid").val());
}
);
})
Common.js
var POPMENU = new Object;
var popup = {
init : function() {
var $this = this;
$('.popup').each(function(index, obj) {
obj = $(obj);
var pop = $(obj.attr('href'));
if(pop && pop.attr('popup')) {
pop.CSS({'display':'none'});
obj.on('click', function(e) {
$this.open(pop);
});
}
});
this.maskinit();
},
maskinit : function() {
var $this = this;
$('#mask').off().on('tap', function() {
$this.close();
});
},
open : function(pop, type, url) {
this.close();
this.maskinit();
if(typeof pop == 'string') {
$('#ntcmsg').remove();
if(type == 'alert') {
pop = '<div class="t } else if(type == 'confirm') { pop = '<div class="tip"><dt>'+ pop +'</dt><dd><input class="redirect button2" type="button" value="確定" href="'+ url +'"><a href="javascript:;" onclick="popup.close();">取消</a></dd></div>' } $('body').append('<div id="ntcmsg" style="display:none;">'+ pop +'</div>'); pop = $('#ntcmsg'); } if(POPMENU[pop.attr('id')]) { $('#' + pop.attr('id') + '_popmenu').html(pop.html()).css({'height':pop.height()+'px', 'width':pop.width()+'px'}); } else { pop.parent().append('<div class="dialogbox" id="'+ pop.attr('id') +'_popmenu" style="height:'+ pop.height() +'px;width:'+ pop.width() +'px;">'+ pop.html() +'</div>'); } var popupobj = $('#' + pop.attr('id') + '_popmenu'); var left = (window.innerWidth - popupobj.width()) / 2; var top = (document.documentElement.clientHeight - popupobj.height()) / 2; popupobj.css({'display':'block','position':'fixed','left':left,'top':top,'z-index':120,'opacity':1}); $('#mask').css({'display':'block','width':'100%','height':'100%','position':'fixed','top':'0','left':'0','background':'black','opacity':'0.2','z-index':'100'}); POPMENU[pop.attr('id')] = pop; }, close : function() { $('#mask').css('display', 'none'); $.each(POPMENU, function(index, obj) { $('#' + index + '_popmenu').css('display','none'); }); } }; 上面是popup的定義,下面是他的三種用法: <!--{if !$_G[uid]}--> popup.open('要輸出的提示信息', 'confirm', '點擊確定按鈕后要跳轉(zhuǎn)的地址'); confirm為彈出提示框的方式,這種方式有確認和取消兩種按鈕,點擊確定后才會跳轉(zhuǎn)。 <!--{else}--> popup.open('要輸出的提示信息', 'alert');alert為彈出提示框的方式,這種方式只有一個確定按鈕,如果下面有跳轉(zhuǎn)鏈接,不點擊也會在默認時間內(nèi)跳轉(zhuǎn)頁面。 <!--{/if}--> popup.close();隱藏當前窗體
新聞熱點
疑難解答