2010-12-31 11 views
0

Ich möchte eine ID an eine Javascript-Funktion als Parameter (inRef) übergeben und dann mit dem Prototype Fade.Effect bearbeiten. Meine Funktion sieht wie folgt aus:Prototyp/Javascript DOM-Element ID als Parameter

<script type="text/javascript"> 
    function fadeEffect(inRef) { 
     $(inRef).fade({ duration: 1.8, from: 0.7, to: 1 }); 
    } 
</script> 

Firefox und Opera es richtig verarbeiten kann, während Chrome und Safari eine Konsole Fehler werfen sagen InRef nicht definiert ist. Ich übergebe die inRef als Zeichenfolge und denke, Javascript benötigt es als etwas anderes (JSON?)

Vielen Dank für jede Hilfe.

+0

Was ist der Wert, den Sie an "inref" übergeben? – zsalzbank

+0

Der Wert ist bereits undefiniert. Also muss ich es vorher tippen ?! Aber als was? – doemsche

Antwort

1

In der Funktion alert (typeof inRef), um zu überprüfen, ob inRef in Webkit-Browsern als Zeichenfolge umgewandelt wird.

function fadeEffect(inRef) { 
     alert(typeof inRef); 
     $(inRef).fade({ duration: 1.8, from: 0.7, to: 1 }); 
} 

Wenn sie nicht, es als String warf

function fadeEffect(inRef) { 
     $(inRef.toString()).fade({ duration: 1.8, from: 0.7, to: 1 }); 
} 
0

InRef eine Zeichenfolge sein kann, da $ (InRef) in einen Objektverweis verwandelt. Vielleicht liegt das Problem woanders. Was passiert, wenn Sie anstelle der Variablen das Literal verwenden?

$("divname").fade({ duration: 1.8, from: 0.7, to: 1 });