#1 (permalink)  
Alt 25.04.2008, 15:40
Neuer Benutzer
 
Registriert seit: 25.04.2008
Beiträge: 2
Standard MouseOver Buttons einfügen

Hallo!

Ich habe ein kleines Problem beim Einfügen von mouseover Buttons in das Template für xtcommerce. Der Code für die Buttons benötigt Java Script, das auch gleichzeitig das Problem darstellt. Wenn ich den Java Code einfach so in die index.html des Templates schreibe, bekomme ich vom Smarty_Compiler.class.php folgende Fehlermeldung:

Zitat:
Fatal error: Smarty error: [in xtc4/index.html line 12]: syntax error: unrecognized tag 'var' (Smarty_Compiler.class.php, line 583) in /homepages/41/d100285915/htdocs/website/xt_test/includes/classes/Smarty_2.6.14/Smarty.class.php on line 1095
Ich kann daraus nur soviel verstehen, dass der Tag "var" nicht definiert ist, und er somit diesen nicht kompilieren kann.

Der Java Code sieht so aus:
Code:
<script 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>
Wo muss dieser Code hin?

Benutzt wird xt:Commerce 3.0.4SP2.1
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #2 (permalink)  
Alt 25.04.2008, 21:07
xt:Commerce Support Kunde
 
Registriert seit: 09.10.2006
Beiträge: 126
Standard

Kein Gewähr, aber ich würde es mal in die includes/header.php stecken...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #3 (permalink)  
Alt 26.04.2008, 10:29
Erfahrener Benutzer
 
Registriert seit: 26.12.2005
Beiträge: 461
Standard

Du kannst javascript nicht einfach so in die index.html werfen!

eine möglichkeit wäre z.b. die header.php, wie schon erwähnt..
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #4 (permalink)  
Alt 29.04.2008, 16:18
xt:Commerce Support Kunde
 
Registriert seit: 09.04.2008
Beiträge: 422
Standard

"Gehören" tut JavaScript aber doch in die general.js.php ?
Viele grüße - Michael
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #5 (permalink)  
Alt 29.04.2008, 16:29
xt:Commerce Support Kunde
 
Registriert seit: 09.10.2006
Beiträge: 126
Standard

Ohne zu wissen, wofür die general.js.php genau ist:

Da diese nicht überall eingefügt wird, würde ich das eher in die header.php setzen... Schließlich befindet sich dort sowieso schon JS-Code!

Grüße
Simon
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #6 (permalink)  
Alt 29.04.2008, 16:58
xt:Commerce Support Kunde
 
Registriert seit: 20.09.2006
Beiträge: 168
Daumen hoch Mouseover Button per CSS

Hi,
meine Meinung ist - vergiß doch MouseOver mit Javascript.

Geht doch viel sauberer, leaner und besser mit CSS.

Da brauchst Du nur 1 Bild, und 2 Definitionen im Stylesheet und die class im HTML code. Fertig.

Und Du brauchst den Javascriptcode nicht.

Übrigens, wenn Du's doch mit JS machen möchtest, der Code wäre gut in der /includes/header.php aufgehoben, dort wo auch ziemlich viel anderes JS plaziert ist, nämlich zwischen
<head> und </head>

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #7 (permalink)  
Alt 29.04.2008, 17:05
xt:Commerce Support Kunde
 
Registriert seit: 09.04.2008
Beiträge: 422
Standard

Zitat:
Zitat von mister_tt Beitrag anzeigen
Ohne zu wissen, wofür die general.js.php genau ist:

Da diese nicht überall eingefügt wird, würde ich das eher in die header.php setzen... Schließlich befindet sich dort sowieso schon JS-Code!
die general.js.php steht im /template/javascripts und ist einzig dafür da, Template bezogenes JavaScript mit einzubauen. (also so ziemlich das, was du machen willst ..:-))
Sie wird "jedesmal" mit aufgerufen....

Aber ich gebe njoy2 recht - wenn möglich es im css zu machen !
Viele Grüße - Michael
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #8 (permalink)  
Alt 29.04.2008, 17:36
xt:Commerce Support Kunde
 
Registriert seit: 09.10.2006
Beiträge: 126
Standard

Zitat:
Zitat von mikkel Beitrag anzeigen
die general.js.php steht im /template/javascripts und ist einzig dafür da, Template bezogenes JavaScript mit einzubauen. (also so ziemlich das, was du machen willst ..:-))
Sie wird "jedesmal" mit aufgerufen....
Ups, na gut

CSS ist immer besser als JS
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #9 (permalink)  
Alt 02.05.2008, 13:14
Neuer Benutzer
 
Registriert seit: 25.04.2008
Beiträge: 2
Standard

Vielen Dank für die hilfreichen Antworten. Ich habe den Code in die includes/header.php kopiert und nun funktioniert es!

Danke nochmals an alle für die Antworten!


Wenn ich noch Zeit habe, werde ich die Buttons vielleicht doch noch mit CSS erstellen..
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #10 (permalink)  
Alt 03.05.2008, 13:36
Benutzer
 
Registriert seit: 09.12.2007
Beiträge: 47
Standard

Und was geschieht, wenn jemand in seinem Browser Javascript deaktiviert hat?

Grüße

T24
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
buttons, einfügen, mouseover

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Neue Buttons Einf?gen rosaschaf Template System 9 30.12.2004 22:01


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:14 Uhr.

Copyright © 2011 xt:Commerce GmbH / xt:Commerce International Ltd. - All Rights Reserved

xt:Commerce is a SafeCharge brand