Javascript window.onload?

Frågor kring MODdar (modifikationer) för phpBB 3 (3.0.0 eller senare).

Moderatorer: Supportgrupp, Moderatorgrupp

Skriv svar
Peter Westerlund
Medlem
Medlem
Inlägg: 29
Blev medlem: 2009-05-14 13:04
Svar: 0

Javascript window.onload?

Inlägg av Peter Westerlund »

Jag har en javascript funktion som jag vill använda på mitt forum. Funktionen anropas via window.onload när sidan laddas, men det fungerar förstås inte eftersom det säkert är många andra funktioner som laddas via window.onload. Så det kanske finns någon onload-funktion man ska använda? Eller vad ska jag göra för att använda window.onload?
Användarens profilbild
Kjell
Hedersmedlem
Hedersmedlem
Inlägg: 4510
Blev medlem: 2006-11-11 23:35
Svar: 0

Re: Javascript window.onload?

Inlägg av Kjell »

prova att köra Multiple Window.onload
http://www.webmasterworld.com/forum91/3647.htm
/Kjelle KonsultPoolen * Facebook * Twitter * MODx Verkstan
Brukar sova lite efter 29:e timman och Ingen support via PM!
Peter Westerlund
Medlem
Medlem
Inlägg: 29
Blev medlem: 2009-05-14 13:04
Svar: 0

Re: Javascript window.onload?

Inlägg av Peter Westerlund »

Om man kollar i overall_header.html så finns denna kod:

Kod: Markera allt

<script type="text/javascript">
// <![CDATA[
	var jump_page = '{LA_JUMP_PAGE}:';
	var on_page = '{ON_PAGE}';
	var per_page = '{PER_PAGE}';
	var base_url = '{A_BASE_URL}';
	var style_cookie = 'phpBBstyle';
	var style_cookie_settings = '{A_COOKIE_SETTINGS}';
	var onload_functions = new Array();
	var onunload_functions = new Array();

	<!-- IF S_USER_PM_POPUP -->
		if ({S_NEW_PM})
		{
			var url = '{UA_POPUP_PM}';
			window.open(url.replace(/&/g, '&'), '_phpbbprivmsg', 'height=225,resizable=yes,scrollbars=yes, width=400');
		}
	<!-- ENDIF -->

	/**
	* Find a member
	*/
	function find_username(url)
	{
		popup(url, 760, 570, '_usersearch');
		return false;
	}

	/**
	* New function for handling multiple calls to window.onload and window.unload by pentapenguin
	*/
	window.onload = function()
	{
		for (var i = 0; i < onload_functions.length; i++)
		{
			eval(onload_functions[i]);
		}
	}

	window.onunload = function()
	{
		for (var i = 0; i < onunload_functions.length; i++)
		{
			eval(onunload_functions[i]);
		}
	}

// ]]>
</script>
Det har väl någonting med onload att göra. Det ser ut som det på något sätt är förberett för att man ska kunna använda flera onloads? Men kan du utifrån ovanstående kod se hur det är tänkt? För jag förstår inte riktigt.
Användarens profilbild
Kjell
Hedersmedlem
Hedersmedlem
Inlägg: 4510
Blev medlem: 2006-11-11 23:35
Svar: 0

Re: Javascript window.onload?

Inlägg av Kjell »

Den öppnar en popup om man har ett PM och avslutar om man har fått den en gång.
/Kjelle KonsultPoolen * Facebook * Twitter * MODx Verkstan
Brukar sova lite efter 29:e timman och Ingen support via PM!
Peter Westerlund
Medlem
Medlem
Inlägg: 29
Blev medlem: 2009-05-14 13:04
Svar: 0

Re: Javascript window.onload?

Inlägg av Peter Westerlund »

Jag får det att fungera att göra flera onloads när en sida laddas, med onload_functions.push('myfunction()'). Men jag kan inte använda den till att ladda min Custom:init som jag annars laddar på följande sätt:

window.onload = Custom.init;

Det vill inte fungera, hur ska jag ladda den?
Användarens profilbild
Kail
Administratör
Administratör
Inlägg: 2937
Blev medlem: 2003-06-03 14:53
Svar: 0

Re: Javascript window.onload?

Inlägg av Kail »

Jag rekommendar dock att du hellre användre window.ready eller liknande (finns i alla störra JS-bibliotek) eftersom det går snabbare, du slipper vänta på att hela sidan är helt färdig. Jag använder normalt jQuery för detta och jQuery sköter det osynligt (http://www.peachpit.com/articles/articl ... 7&seqNum=3) så jag slipper bekymra mig om att inte riskera skriva över andra callbacks som är registrerade för vald händelse. Om du saknar jQuery kan du använda denna metod:
http://www.webreference.com/programming ... t/onloads/
Jakob Persson - Grundare av phpBB Sverige - IT-konsult - http://www.jakob-persson.com
The Complete phpBB Template Design Guide (phpBB 2.x): http://archive.jakob-persson.com/articl ... index.html
Skriv svar

Vilka är online

Användare som besöker denna kategori: 1 och 0 gäst