0

我有奇怪的行为,我不知道如何解决它。

我有移动版本的网络服务,在每个页面上我都在DIV元素中放置搜索表单,整个容器应该用常见的 jQuery 的.toggle()切换

代码是(脚本直接放在页面的代码中,就像在示例中一样):

<div id="search-area" style="display: none">
    search form here...
</div>

<a href="#" id="search-area-switch" data-role="button">Search</a>

<script type="text/javascript">
    $('#search-area-switch').live('tap',function (event) {
        $('#search-area').toggle();
    });
</script>

我的问题是toggle()仅在重新加载后的第一页上有效,并且在下一页更改后切换不再可能。(顺便说一句。页面加载了 AJAX 以保持转换等)

我错过了什么?

4

1 回答 1

1

如果脚本位于页面头部,则在您更改页面时它不会运行,因为 Jquery Mobile 会忽略第一页之后的头部。

一般来说,拥有多个具有相同 id 的项目是不好的做法。最好让它们都属于同一个类,然后让您的选择器以这种方式找到项目。

于 2012-07-17T19:47:35.137 回答