0

下面有什么明显的我遗漏的东西吗?我在一个谷歌网站上有一个简单的 html 框小工具,用最少的 jquery 来关闭/打开一个 div,但它似乎不起作用。下面的代码在 apache 站点页面上运行良好。有小费吗 ?

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.js"></script>
<script>

    $('#check').click(function(){
        $('#feedback').toggle();
    });

</script>

<button id='check'>Check Answers</button>

<div id='feedback' style='display:none;'>
    <ul>
        <li>list 1</li>
        <li>list 2</li>
    </ul>
 </div>
4

2 回答 2

1

如果您的脚本包含在您的元素之前,那么它会在元素被解析之前运行,这意味着$("#check")找不到任何元素来绑定点击处理程序。

您需要将脚本块移动到相关元素之后(就在结束</body>标记是包含脚本的常见位置之前)或使用文档就绪处理程序,该处理程序将等待运行您的代码,直到解析完所有元素:

$(document).ready(function() {
    $('#check').click(function(){
        $('#feedback').toggle();
    });
});
于 2012-09-03T02:20:45.570 回答
1

我无法让它与 jquery 一起工作。

Elliot Shafii 在google+ Google 协作平台社区中帮助了我,以下代码有效:

<button id="infoToggle" value="toggle" onclick="document.getElementById('info').style.display=((document.getElementById('info').style.display=='block') ? 'none' : 'block')">Toggle</button>

<div id="info" style="display:block;">
TEST
</div>
于 2013-08-31T19:13:10.953 回答