Pagina 1 van 1

onMouseOver button

Geplaatst: 05 sep 2003, 16:41
door Khai
Ik wil dat mijn button verandert van kleur als je met de muis eroverheen gaat. Maar bij mij doet ie het nog steeds niet.
Help me!

Waar moet ik dit gedeelte van de code plaatsen? Ik heb de overall_header.tpl en de viewforum_body.tpl geprobeerd, maar tevergeefs:

Code: Selecteer alles

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html dir="{S_CONTENT_DIRECTION}">
<head>
<meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}">
<meta http-equiv="Content-Style-Type" content="text/css">
{META}
{NAV_LINKS}
<title>{SITENAME} :: {PAGE_TITLE}</title>

<style type="text/css">
-->
</style>

<script language="JavaScript" type="text/JavaScript">
<!--
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_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>
</head>
En dit gedeelte van de script:

Code: Selecteer alles

<body onLoad="MM_preloadImages('template/.../images/{LANG}over_post.gif')">
<a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('new topic','','templates/.../images/{LANG}over_post.gif',1)"><img src="templates/.../images/{LANG}post.gif" alt="new topic" name="new topic" width="62" height="21" border="0"></a>
</body>
</html>
Ik weet dat ik dat laatste moet aanpassen naar mijn eigen template.

Geplaatst: 05 sep 2003, 19:30
door jeroen234
welke buton moet veranderen ???

Geplaatst: 06 sep 2003, 05:31
door Khai
Goed. Ik heb de [newtopic] en [postreply] werkende gekregen. Maar nu wil ik ook de icons (profile, msnm, www, etc.) in de 'viewtopic_body' zo'n onMouseOver button van maken.
Deze hebben een totaal andere code, namelijk:

Code: Selecteer alles

{postrow.PROFILE_IMG} {postrow.PM_IMG}
i.p.v

Code: Selecteer alles

<a href="..." onMouseOut="...>
Neem even een kijkje op http://www.khai.nl/forum/viewtopic.php?t=1 dan weet je wat ik bedoel.

Geplaatst: 06 sep 2003, 18:37
door mosymuis
Deze tags staan in viewtopic.php, zoek bijvoorbeeld naar "PROFILE_IMG" en pas het daar aan. Denk er wel aan dat elk plaatje bij elke post een unieke naam moet hebben omdat dit anders niet werkt, dit kun je realiseren door {postrow.U_POST_ID} in de namen te gebruiken.

Geplaatst: 06 sep 2003, 19:41
door Khai
Dus voor de 'quote'-icon heb ik de volgende code in viewtopic.php:

Code: Selecteer alles

	$temp_url = append_sid("posting.$phpEx?mode=quote&" . POST_POST_URL . "=" . $postrow[$i]['post_id']);
	$quote_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_quote'] . '" alt="' . $lang['Reply_with_quote'] . '" title="' . $lang['Reply_with_quote'] . '" border="0" /></a>';
	$quote = '<a href="' . $temp_url . '">' . $lang['Reply_with_quote'] . '</a>';

En deze heb ik veranderd in:

Code: Selecteer alles

	$temp_url = append_sid("posting.$phpEx?mode=quote&" . POST_POST_URL . "=" . $postrow[$i]['post_id']);
	$quote_img = '<a href="' . $temp_url . '" onMouseOut="MM_swapImgRestore()" onMouseOver"MM_swapImage('quote','',' . $images['over_icon_quote'] . ',1)"><img src="' . $images['icon_quote'] . '" alt="' . $lang['Reply_with_quote'] . '" name="quote" title="' . $lang['Reply_with_quote'] . '" border="0" /></a>';
	$quote = '<a href="' . $temp_url . '">' . $lang['Reply_with_quote'] . '</a>';
Ik doe tóch iets fout. Ik krijg de volgende foutmelding:
Parse error: parse error in /.../.../.../.../forum/viewtopic.php on line 985

Geplaatst: 06 sep 2003, 20:06
door mosymuis
Lol, de '-jes in je onMouseOver tag moet je wel commenten door er /-jes voor te plaatsen, nu neemt PHP ze aan voor eigen code... :P

En dan moet je dus {postrow.U_POST_ID} in je plaatjes namen verwerken, omdat ze zo niet uniek zijn. Als je dat niet doet (en van de PHP error af bent) zal je namelijk Javascript errors krijgen...

Geplaatst: 07 sep 2003, 15:58
door Khai
:?: ik niet snep :?:

Kun je me niet eenvoudigweg de code geven? Als het even kan, van de hele regel?
En van dat {postrow.U_POST_ID} snap ik ook niet helemaal.

Geplaatst: 10 sep 2003, 08:26
door mosymuis
probeer dit eens

Code: Selecteer alles

	$temp_url = append_sid("posting.$phpEx?mode=quote&" . POST_POST_URL . "=" . $postrow[$i]['post_id']);
	$quote_img = '<a href="' . $temp_url . '" onMouseOut="MM_swapImgRestore()" onMouseOver"MM_swapImage(/'quote{postrow.U_POST_ID}/',/'/',/' . $images[/'over_icon_quote/'] . /',1)"><img src="' . $images['icon_quote'] . '" alt="' . $lang['Reply_with_quote'] . '" name="quote{postrow.U_POST_ID}" title="' . $lang['Reply_with_quote'] . '" border="0" /></a>';
	$quote = '<a href="' . $temp_url . '">' . $lang['Reply_with_quote'] . '</a>';
dus {postrow.U_POST_ID} verwerken in de namen van je plaatjes en elke ' in de mouseOver tag veranderen in /'. :)