HTML& JS Markup - 更好的方法吗?

时间:2013-09-23 12:15:25

标签: javascript html

我正在将我的html文件加载到#content div中,以避免在单击链接时重新加载整个页面。我是通过在index.html中调用以下内容来完成此操作的:

[...]
<div id="content">

    <script type="text/javascript">$("#content").load("home.html");</script>

</div>

问题是如果我的global.js中的一个javascript与将加载到我的#content div中的一个html文件有关,那么它就不会被执行。

为了处理这个事实,我只需将相关html文件的js通过<script>命令发布到该特定的html文件中,例如,像这样:

<script type="text/javascript">

$(document).ready(function () {
    $(".faq").click(function () {
        $(this).find(".faq_answer").toggle();
    });
});

</script>

我对它完全不满意,所以我的问题是:有没有办法让我的js回到我的global.js文件中?

2 个答案:

答案 0 :(得分:2)

如果我理解你的问题,你需要使用甚至委托将事件处理程序分配给尚不存在的元素

$(document).on("click",".faq", function (){ ... })

document可以被绑定时存在的.faq容器替换。

有关详细信息,请选中“直接和委派”部分here

答案 1 :(得分:0)

尝试通过global.js加载页面,将其保存在html页面中。 保留将首先加载内容的脚本。 这应该工作