Das Notes Forum

Domino 9 und frühere Versionen => ND9: Entwicklung => Thema gestartet von: MLoy am 21.04.16 - 11:06:59

Titel: Partial Refresh nach Window Resize triggern
Beitrag von: MLoy am 21.04.16 - 11:06:59
Hallo,

ich bin auf der Suche nach einer Möglichkeit bestimmte Bereiche einer XPage zu refreshen, nachdem der User die Größe des Browserfensters vergrößert, verkleinert oder maximiert hat.

Das Event, das getriggert wird kann ich mit jQuery abfangen (s.u.)
Allerdings kenne ich keine Möglichkeit von dort aus einen Partial Refresh auszulösen.

Code
<xp:scriptBlock id="scriptBlock1">
	<xp:this.value>
	<![CDATA[$(document).ready(function() {        
        $( window ).resize(function() {      
			console.log( "resize ausgeführt" );
		});  
	});]]>
	</xp:this.value>
</xp:scriptBlock>

Hat jemand ne Idee wie ich hier weiterkomme?

Vielleicht macht auch ein komplett anderer Ansatz mehr Sinn....

Viele Grüße
Marcus
Titel: Re: Partial Refresh nach Window Resize triggern
Beitrag von: umi am 21.04.16 - 13:25:40
Moin

Wie wäre ein versteckter button/link der den partial refresh auslöst. Diesen Button müsstest Du dann via jQuery tiggern können.
Titel: Re: Partial Refresh nach Window Resize triggern
Beitrag von: Sven Hasselbach am 21.04.16 - 14:09:37
Code
XSP.partialRefreshGet('<ID>', {} );
Titel: Re: Partial Refresh nach Window Resize triggern
Beitrag von: MLoy am 22.04.16 - 08:55:19
Danke euch 2, es hat funktioniert.

Moin

Wie wäre ein versteckter button/link der den partial refresh auslöst. Diesen Button müsstest Du dann via jQuery tiggern können.

Code
XSP.partialRefreshGet('<ID>', {} );


Danke auch an Mark Roden, da der Select des Buttons erst mit seinen Code funktioniert:
https://openntf.org/XSnippets.nsf/snippet.xsp?id=x-jquery-selector-for-xpages

Hier mein Script, für alle die es interessiert:
Code
<xp:scriptBlock id="scriptBlock1">
		<xp:this.value>
			<![CDATA[$(document).ready(function() {        
			   function x$(idTag, param){ 
					idTag=idTag.replace(/:/gi, "\\:")+(param ? param : "");
					return($("#"+idTag));
				}			
				$( window ).resize(function() {
					x$("#{id:partRefButton}","").click();
				});
			});]]>
		</xp:this.value>
</xp:scriptBlock>


Gruß
Marcus