我正在尝试将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似乎在页面组装堆栈中为时已晚,无法运行。
谢谢
答案 0 :(得分:0)
有许多JQuery方法可以去除Javascript。我很难学到它。看看那个。这可能不是你猜的问题。解决这个问题的方法是不要在服务器端生成JS,而是在客户端使用参数,配置等将值作为某些HTML元素的服务器端的某些DATA元素值传递。您分配给DATA-的字符串也可以是JSON字符串。
答案 1 :(得分:0)
您应该使用jQuery .on()方法,请参阅http://api.jquery.com/on/
我不确定你的代码是怎样的。但这是一个想法。获取将要加载的元素(当前不在DOM中)的最接近的容器(存在于DOM中)和 on 上的asign选择器和要加载的元素的操作。