在通过AJAX加载的DOM中运行动态注入的javascript(尝试使用histor
我有一个基本上有页眉,页脚和正文视图的Web应用程序.我正在使用history.js库和
HTML5 pushstate来开发网站,但我遇到的一个问题是在javascript插入DOM时运行嵌入式javascript.
几乎我所有的javascript都包含在jQuery中(function(){…})(文档就绪加载器) 有谁知道处理这个问题的好策略?谢谢! 解决方法
如果我理解你,你的“页面”只是一个动态加载的HTML容器.在该HTML中,您拥有当前不执行的
JavaScript脚本块.那是对的吗?它们是页面脚本还是新脚本文件的链接?
无论如何,我认为这回答了你的问题:How do you execute a dynamically loaded JavaScript block? 我自己的想法: 除非你的容器非常通用,因此无法知道你可能需要什么样的JavaScript,最简单的方法可能只是手动将所有JavaScript附加到容器页面,以便它加载容器,可能缩小并连接成一个文件. 如果你需要动态加载脚本,但是你知道它们是什么,你可以使用.getScript()或.ajax()来使用jQuery.我认为这页很好地说明了一切,http://www.electrictoolbox.com/jquery-dynamically-load-javascript-file/. 同样,如果您在获取html块之前不知道需要哪些脚本,则可能会解析html脚本链接并通过添加到页面的新脚本元素手动附加它们.例如,下面的脚本将jQuery添加到页面(如果它尚不存在). (function () { if (typeof(jQuery) == "undefined") { var headID = document.getElementsByTagName("head")[0]; var newScript = document.createElement('script'); newScript.type = 'text/javascript'; newScript.id = 'myjQuery'; newScript.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js'; headID.appendChild(newScript); } window.addEventListener('load',function (e) { //make jQuery calls here. },false); })(); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- NOR Flash、NAND Flash和iNAND Flash的不同点
- react-native-barcodescanner扫码第二次进去黑屏
- sqlite选择日期条件
- swift – CUICatalog:无效请求:请求子类型,而不指定成语(
- EBS xml publisher中文乱码问题及解决办法
- Oracle系统用表信息
- ruby – Chef没有运行apt(apt-get update)配方. Apt返回100
- ruby-on-rails – 为什么request.env [‘REMOTE_ADDR’]返回
- ios – 使用UIManagedDocument的Xcode 4.5的iPhone模拟器5.
- 责任链模式