将样式应用于包含html文件的jquery

时间:2014-01-22 20:17:19

标签: javascript jquery

我正在尝试将html页面的jquery加载到页面主体中。

使用位于页面中间的名为sidebar_menu的div, 我正在页面的末尾(底部)执行jquery加载。

    $("#sidebar_menu").load("/sitemenu.html");
    $("#sidebar_menu").page();

有点有效......内容会显示,但菜单中没有应用javascript功能(展开,折叠等)。已应用样式,但菜单的功能不存在。

我可以复制html的内容代替div,菜单操作也可以。

我是否在堆栈中加载包含的文件太晚了?目前正在使用

jQuery(document).ready(function(){
    $("#sidebar_menu").load("/sitemenu.html");
    $("#sidebar_menu").page();
});

但是有更好的区域可以将html文件加载到DOM中,因为.ready似乎在页面组装堆栈中为时已晚,无法运行。

谢谢

2 个答案:

答案 0 :(得分:0)

有许多JQuery方法可以去除Javascript。我很难学到它。看看那个。这可能不是你猜的问题。解决这个问题的方法是不要在服务器端生成JS,而是在客户端使用参数,配置等将值作为某些HTML元素的服务器端的某些DATA元素值传递。您分配给DATA-的字符串也可以是JSON字符串。

答案 1 :(得分:0)

您应该使用jQuery .on()方法,请参阅http://api.jquery.com/on/

我不确定你的代码是怎样的。但这是一个想法。获取将要加载的元素(当前不在DOM中)的最接近的容器(存在于DOM中)和 on 上的asign选择器和要加载的元素的操作。