在javascript中的错误onclick事件

时间:2013-02-22 03:53:33

标签: javascript

我已经有一段时间遇到问题了,我似乎无法理解如何修复它,我不知道我做错了什么。

我要做的是当我点击网站上的链接时,它需要弹出一个计算器,然后当我点击该计算器上的关闭按钮时它会再次消失。我究竟做错了什么!?!? (注意:calcButton是一个链接,buttonOff是一个按钮)

function showCalc()
{
    alert("button was clicked");
    document.getElementById('calculator').style.visibility = "visible";
}

function hideCalc()
{
    alert("off button was clicked");
    document.getElementById('calculator').style.visibility = "hidden";
}

function main() {
    //store top and left values of calculator
    calculator.style.top = getStyle(calculator, "top");
    calculator.style.left = getStyle(calculator, "left");

    document.getElementById('calcButton').onclick = showCalc;
    document.getElementById('buttonOff').onclick = hideCalc;

}

window.onload = main;

修改

这是获取样式方法:

function getStyle(object,styleName)
{
    if (window.getComputedStyle)
    {
        return document.defaultView.getComputedStyle(object, null).getPropertyValue(styleName);
    }
    else if (object.currentStyle)
    {
        return object.currentStyle[styleName];
    }
}

EDIT2:

计算按钮(这是一个href)

<a href="" id= "calcButton">Calculator</a> 

此外,我不认为有些人明白问题是什么。问题是,当我点击它时,计算器变为可见,然后几乎瞬间隐藏

1 个答案:

答案 0 :(得分:1)

<a href="" id= "calcButton">Calculator</a>

这将导致链接几乎重新加载您的页面,所以对您来说似乎计算器出现然后&#34;立即隐藏&#34;,因为页面已经重新加载。

href属性添加内容:

<a href="javascript:void();" id= "calcButton">Calculator</a>

Live demo