Prototype / Javascript DOM-Element ID作为参数

时间:2010-12-31 15:45:40

标签: javascript prototypejs scriptaculous

我想将一个id作为参数(inRef)移交给Javascript函数,然后使用原型Fade.Effect进行处理。 我的功能如下:

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

Firefox和Opera可以正确处理它,而Chrome和Safari会抛出一个控制台错误,说inRef未定义。 我把inRef作为一个字符串交给我认为Javascript需要它作为其他东西(JSON?)

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

在函数alert(typeof inRef)中检查inRef是否在webkit浏览器中强制转换为字符串。

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

如果不是,则将其转换为字符串

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

答案 1 :(得分:0)

inRef可以是一个字符串,因为$(inRef)将其转换为对象引用。也许问题出在其他地方。如果使用文字而不是变量会发生什么?

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