使用带有javascript函数的onclick,在参数中调用js var

时间:2012-08-03 02:59:37

标签: php javascript html onclick

嘿,伙计们有点卡在这里。我首先开始向您展示代码。

<script type="text/javascript" language="javascript">
var Stanley = "Text here";
function TextLooper(Alien)
{
var myArray = Alien.split("");
var loopTimer;
var changeLetter = function () 
{
    if(myArray.length > 0) 
    {
        document.getElementById("TypingStanley").innerHTML += myArray.shift();
    } 
    else 
    {
        clearTimeout(loopTimer); 
    }
}
setInterval(changeLetter, 70);
};
function InfoBoxClick(id, visibility,AlienVar) 
{
    document.getElementById(id).style.display = visibility; 
    TextLooper(AlienVar);
}
</script>

这就是我的javascript,我在onlick上使用了一个href;

<a href="#Aliens-Stanley" onclick="InfoBoxClick('StanleyInfo','block','Stanley');">LinkName</a>

我正在尝试将函数InfoBoxClick()的第三个参数作为javascript中提到的名为Stanley的var,但我似乎无法做到这一点,任何人都知道我需要做什么???

2 个答案:

答案 0 :(得分:0)

您需要在onclick中引用Stanley作为变量:

InfoBoxClick('StanleyInfo','block',Stanley);

JSFiddle

只是对样式的友好评论,变量应该是小写,类和常量应分别是 CapitalCase UPPERCASE 。这只是一个惯例,但将帮助其他JavaScript开发人员理解您的代码。

答案 1 :(得分:0)

在js中的bcoz一个参数总是像(this)一样隐藏,

如果你想传递3个参数,那么就不要发送3.发送4个参数,第1个参数是(this)

<a href="#Aliens-Stanley" onclick="InfoBoxClick(this,'StanleyInfo','block','Stanley');">LinkName</a>

和yore函数写

function InfoBoxClick(e,id, visibility,AlienVar) 
{
    document.getElementById(id).style.display = visibility; 
    TextLooper(AlienVar);
}

在这个第一个参数e men事件的动作例如(onclick,......)