popup

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • popup

    Code:
    <script language=JavaScript>
    <!--
    var popUpWin=0;
    function popUp(URLStr)
    {
      if(popUpWin)
      {
        if(!popUpWin.closed) popUpWin.close();
      }
      var width="300", height="125";
      var left = (screen.width/2) - width/2;
      var top = (screen.height/2) - height/2;
      popUpWin = window.open(URLStr, 
      						popUpWin, 
      						toolbar='no',
    						location='no',
    						directories='no',
    						status='no',
    						menubar='no',
    						scrollbars='no',
    						resizable='no',
    						copyhistory='yes',
    						width='+width+',
    						height='+height+',
    						left='+left+', 
    						top='+top+',
    						screenX='+left+',
    						screenY='+top+');
    }
    
    //-->
    </script>
    </head> 
    
    <body onLoad="{$onload}; IEsetup()"> 
    [...]
    
    $this->tpl->assign('onload', 'popUp(\'index.php?sek=quick_message_show\');');
    wenn ich die seite öffne passiert nicht was ich will
    es öffnet sich nen pop up aber nicht mit dem inhalt
    das parent fenster wechselt auch die´url komisch komisch
    thx Mukraker

  • #2
    Re: popup

    window.open hat zwei oder drei parameter - in deiner funktion übergibst du ihm jedoch 16.
    ausserdem ist dein fenstername ungültig.

    (und bevor du jetzt blöd fragst, was ich meine, lies mal in selfhtml nach ...)
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      ohh ok

      Code:
      function popUp(URLStr, width, height)
      {
        if(popUpWin)
        {
          if(!popUpWin.closed) {
      		popUpWin.close();
      	}
        }
        var left = (screen.width/2) - width/2;
        var top = (screen.height/2) - height/2;
        var style ='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+',top='+top+',screenX='+left+',screenY='+top;
      
        popUpWin = window.open(URLStr, popUpWin, style);
      }

      funzt auch nur wenn ich die seite refreshe wird ein neues fenster geöffnet, ich möchte das das alte überschrieben wird (neu geladen) wird, so das ich immer nur ein popup auf habe!
      thx Mukraker

      Kommentar


      • #4
        dann musst du popUpWin global deklarieren.

        Kommentar


        • #5
          btw: dein fenstername ist immer noch nicht korrekt.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Code:
            var popUpWin=0;
            function popUp(URLStr, width, height)
            {
              if(popUpWin)
              {
                if(!popUpWin.closed) {
            		popUpWin.close();
            	}
              }
              var left = (screen.width/2) - width/2;
              var top = (screen.height/2) - height/2;
              var style ='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+',top='+top+',screenX='+left+',screenY='+top;
            
              popUpWin = window.open(URLStr, 'popUpWin', style);
            }
            auch so klappts noch nicht
            thx Mukraker

            Kommentar


            • #7
              Original geschrieben von mukraker
              auch so klappts noch nicht
              und wie rufst du diese funktion jetzt auf?
              und was sagt die javascript-konsole?
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                <body onLoad="popUp('index.php?sek=quick_message_show', 500, 450);


                js konsole macht keine fehler
                thx Mukraker

                Kommentar


                • #9
                  und "klappt nicht" heisst ...?

                  stell mal ein online-beispiel bereit.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    das problem ist immer noch das pop up immer wieder neu geöffnet wird und nicht das alte überschrieben wird
                    thx Mukraker

                    Kommentar


                    • #11
                      PopUpBlocker abgeschaltet ?

                      Kommentar


                      • #12
                        jo hab alles aus!!

                        evtl liegts daran das sich das script mit anderen teilen meines header nicht versteht:

                        hier mal der komplette {literal} ist nur für smarty wichtig

                        Code:
                        {literal}	
                        <script language="javascript" src="_external/javascript/datepicker/popcalendar.js"></script>
                        <SCRIPT LANGUAGE="javascript">
                        {
                        self.name="BODY"
                        }
                        function calpopup(Ink){
                        window.open(Ink,"calendar","height=250,width=250,scrollbars=no")
                        }
                        
                        function cllick_box(id){ 
                          location = "index.php?sek=messages&action=del_quick_msg&id="+id;
                        }
                        
                        function MM_swapImgRestore() { //v3.0
                          var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
                        }
                        
                        function MM_jumpMenu(targ,selObj,restore){ //v3.0
                          eval(targ+".location='index.php?sek=projekt&action=show&pid="+selObj.options[selObj.selectedIndex].value+"'");
                          if (restore) selObj.selectedIndex=0;
                        }
                        
                        function MM_preloadImages() { //v3.0
                          var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
                            var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
                            if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
                        }
                        
                        function MM_findObj(n, d) { //v4.01
                          var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
                            d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
                          if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
                          for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
                          if(!x && d.getElementById) x=d.getElementById(n); return x;
                        }
                        
                        function MM_swapImage() { //v3.0
                          var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
                           if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
                        }
                        //-->
                        </script>
                        <script language="JavaScript" src="scripts/count.js" type="text/javascript"></script>
                        <SCRIPT language=JavaScript>
                        <!--
                        v=false;
                        //-->
                        </SCRIPT>
                        <SCRIPT language=JavaScript1.1>
                        <!--
                        if (typeof(Option)+"" != "undefined") v=true;
                        //-->
                        </SCRIPT>
                        <SCRIPT language=JavaScript>
                        <!--
                        if(v){a=new Array(22);}
                        
                        function getFormNum (formName) {
                        	var formNum =-1;
                        	for (i=0;i<document.forms.length;i++){
                        		tempForm = document.forms[i];
                        		if (formName == tempForm) {
                        			formNum = i;
                        			break;
                        		}
                        	}
                        	return formNum;
                        }
                        
                        
                        
                        var catsIndex = -1;
                        var itemsIndex;
                        
                        if (v) { // ns 2 fix
                        	function newCat(){
                        		catsIndex++;
                        		a[catsIndex] = new Array();
                        		itemsIndex = 0;
                        	}
                        	
                        	function O(txt,url) {
                        		a[catsIndex][itemsIndex]=new myOptions(txt,url);
                        		itemsIndex++;
                        	}
                        	
                        	function myOptions(text,value){
                        		this.text = text;
                        		this.value = value;
                        	}
                        	
                        	// fill array
                        {/literal}	
                        {$head}
                        {literal}	
                        } // if (v)
                        
                        function relate(formName,elementNum,j) {
                        if(v){
                        var formNum = getFormNum(formName);
                         if (formNum>=0) {
                        	formNum; // reference next form, assume it follows in HTML
                        	with (document.forms[formNum].elements[elementNum]) {
                        		for(i=options.length-1;i>0;i--) options[i] = null; // null out in reverse order (bug workarnd)
                        		for(i=0;i<a[j].length;i++){
                        			options[i] = new Option(a[j][i].text,a[j][i].value); 
                        		}
                        		options[0].selected = true;
                        	}
                         }
                        } else {
                        jmp(formName,elementNum);
                        }
                        }
                        
                        function IEsetup(){
                        	if(!document.all) return;
                        	IE5 = navigator.appVersion.indexOf("5.")!=-1;
                        	if(!IE5) {
                        		for (i=0;i<document.forms.length;i++) {
                        			document.forms[i].reset();
                        		}
                        	}
                        }
                        
                        
                        function sbox_out(text, inputname ,formname)
                        {
                         if (document.forms[formname](inputname).value=='')
                         {
                          document.forms[formname](inputname).value = text;
                         }
                        }
                        function sbox_over(text, inputname, formname)
                        {
                         if (document.forms[formname](inputname).value == text)
                         {
                          document.forms[formname](inputname).value = '';
                         }
                        }
                        //-->
                        </script>
                        <script language=JavaScript>
                        <!--
                        function msg(title, msg)
                        {
                          var width="300", height="125";
                          var left = (screen.width/2) - width/2;
                          var top = (screen.height/2) - height/2;
                          var styleStr = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbar=no,resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+',top='+top+',screenX='+left+',screenY='+top;
                          var msgWindow = window.open("","msgWindow", styleStr);
                          var head = '<head><title>'+title+'</title></head>';
                          var body = '<center>'+msg+'<br><p><form><input type="button" value="   Done   " onClick="self.close()"></form>';
                          msgWindow.document.write(head + body);
                        }
                        //-->
                        </script>
                        <script language=JavaScript>
                        <!--
                        var popUpWin=0;
                        function popUp(URLStr, width, height)
                        {
                          if(popUpWin)
                          {
                            if(!popUpWin.closed) {
                        		popUpWin.close();
                        	}
                          }
                          var left = (screen.width/2) - width/2;
                          var top = (screen.height/2) - height/2;
                          var style ='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+',top='+top+',screenX='+left+',screenY='+top;
                        
                          popUpWin = window.open(URLStr, 'popUpWin', style);
                        }
                        
                        //-->
                        </script>
                        {/literal}



                        kann da wer nen fehler drin finden, der dazu führt das das popup nicht überschrieben wird ?

                        (hab schonmal alles andere rausgeworfen, hilt auch nichts)
                        ->hier mal der ganze QT: http://nopaste.php-q.net/55387 <-
                        Zuletzt geändert von mukraker; 28.04.2004, 15:14.
                        thx Mukraker

                        Kommentar


                        • #13
                          Original geschrieben von mukraker
                          das problem ist immer noch das pop up immer wieder neu geöffnet wird und nicht das alte überschrieben wird
                          du meinst, beim neu laden der seite?

                          dass javascript-variablen nicht seitenübergreifend existieren, sollte bekannt sein.
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            jo, aber irgendwie muss man das doch hinbekommen ?


                            das fenster soll halt immer offen sein. auch wenn man es zumacht, soll es beim nächsten klicke wiederkommen ( aber nicht doppelt dargestellt werden )
                            thx Mukraker

                            Kommentar


                            • #15
                              Original geschrieben von mukraker
                              jo, aber irgendwie muss man das doch hinbekommen ?
                              aber auf jeden fall nicht, in dem du die javascript-referenz auf das fenster abfragst - die existiert nämlich nur innerhalb instanz der seite, die das fenster geöffnet hat.

                              eventuell kannst du abfragen, ob ein fenster mit dem fensternamen exisitert, über window["fenstername"]
                              I don't believe in rebirth. Actually, I never did in my whole lives.

                              Kommentar

                              Lädt...
                              X