切换功能无效

时间:2012-08-28 15:19:12

标签: javascript toggle jquery slidetoggle

以下是我用于切换的代码。

function toggle_visibility(id) {
       var e = document.getElementById(id);
       if(e.style.display == 'block')
          e.style.display = 'none';
       else
          e.style.display = 'block';
    }

它在我的电脑上工作正常。但是当我在服务器端使用它时,它调用.asp页面,它不起作用。我知道我必须使用.live()处理程序。我用jquery slidetoggle试了一下。但它不起作用。以下是html代码

<div class="issue_button">
<a align="center" href="#" onclick="toggle_visibility('dropdown1');">Link</a></div>
<div id="dropdown1"> <p>Some text</p> </div>

我做错了吗?坦率地说,我不知道如何使用实时处理程序编写代码。

3 个答案:

答案 0 :(得分:4)

既然你说你可以使用jQuery,我建议你这个替代代码

function toggle_visibility(id) {
    $('#' + id).toggle();
}

答案 1 :(得分:1)

这是用于切换的jquery解决方案。

    <div class="issue_button">
        <a align="center" href="#">Link</a>
    </div>
    <div id="dropdown1"> <p>Some text</p> </div>

$(function () {
    $(".issue_button a").click(function () {
        $("#dropdown1").slideToggle();
    });        
});​

http://jsfiddle.net/aJFSy/1/

<强>更新

我不会使用Live,因为自1.7以来已弃用

代表 - http://api.jquery.com/delegate/ http://jsfiddle.net/aJFSy/2/

http://api.jquery.com/on/

答案 2 :(得分:-4)

尝试:

function toggle_visibility(id) { 
  var e = document.getElementById(id); 
  if(e.style.display == 'block'){
    e.style.display = 'none'; 
  }else{ 
    e.style.display = 'block';
  }
}