Heim >php教程 >php手册 >discuz二次开发笔记(二)------跳转函数运用,discuz二次开发

discuz二次开发笔记(二)------跳转函数运用,discuz二次开发

WBOY
WBOYOriginal
2016-06-13 09:06:251104Durchsuche

discuz二次开发笔记(二)------跳转函数运用,discuz二次开发

      前几天在增加修改功能时,突然用到一个提示函数,有点不理解,看了他的由来后果断做下笔记,感觉这在以后的开发中肯定还是要用的上的。有些地方不是很理解,在以后慢慢纠正、查补。

Htm页面中用的js跳转:

$("#lyy_real").click(function(){

    $.post("api/realnamechange.php",

            {uname:$("#uname").val(),uid:$("#uid").val(),realname:$("#realname_lyy").val()},

            function(data){  数据返回执行弹出框,并刷新当前页面。

                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 = '

'+ pop +'
'

                            } else if(type == 'confirm') {

                                     pop = '

'+ pop +'
取消
'

                            }

                            $('body').append('

');

                            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('

'+ pop.html() +'
');

                   }

                   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的定义,下面是他的三种用法:

         popup.open('要输出的提示信息', 'confirm', '点击确定按钮后要跳转的地址'); confirm为弹出提示框的方式,这种方式有确认和取消两种按钮,点击确定后才会跳转。

         popup.open('要输出的提示信息', 'alert');alert为弹出提示框的方式,这种方式只有一个确定按钮,如果下面有跳转链接,不点击也会在默认时间内跳转页面。

popup.close();隐藏当前窗体

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn