在页面中动态载入外部javascript

『 更新时间:2008-1-25 』『 字体:变小 变大 』『 作者:佚名 | 来源:互联网 』

有时候需要在网页中某个div载入之后,动态引入一段javascript,IE下的解决方案:

CODE:
  1. newjs.onreadystatechange = function () {
  2. if (newjs.readyState == 'loaded') {
  3. // ready!
  4. }
  5. }
  6. newjs.onload = function () {
  7. // ready!
  8. }

主要利用了onload以及onreadystatechange事件。把这个加以利用,也能动态载入外部css。下面是同时适合Ie/firefox的写法。

CODE:
  1. var css;
  2. function include_css(css_file) {
  3. var html_doc = document.getElementsByTagName('head')[0];
  4. css = document.createElement('link');
  5. css.setAttribute('rel', 'stylesheet');
  6. css.setAttribute('type', 'text/css');
  7. css.setAttribute('href', css_file);
  8. html_doc.appendChild(css);
  9. // alert state change
  10. css.onreadystatechange = function () {
  11. if (css.readyState == 'complete') {
  12. alert('CSS onreadystatechange fired');
  13. }
  14. }
  15. css.onload = function () {
  16. alert('CSS onload fired');
  17. }
  18. return false;
  19. }
  20. var js;
  21. function include_js(file) {
  22. var html_doc = document.getElementsByTagName('head')[0];
  23. js = document.createElement('script');
  24. js.setAttribute('type', 'text/javascript');
  25. js.setAttribute('src', file);
  26. html_doc.appendChild(js);
  27. js.onreadystatechange = function () {
  28. if (js.readyState == 'complete') {
  29. alert('JS onreadystate fired');
  30. }
  31. }
  32. js.onload = function () {
  33. alert('JS onload fired');
  34. }
  35. return false;
  36. }

这里是Demo,有动态载入css以及js的例子。

原始出处

【点击数:】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口

关文章

您的姓名:
评分等级:
1分 2分 3分 4分 5分
评论内容:
1、严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
2、用户需对自己在使用金石网服务过程中的行为承担法律责任。
3、本站管理员有权保留或删除评论内容。
4、评论内容只代表网友个人观点,与本网站立场无关。
  • 金石网
  • | 设为首页 | 加入收藏 | 联系我们 | 版权申明 | 友情链接 | 站点地图 | 网站帮助 | 网站留言 | 广告服务 |
  • Copyright © 2001-2008 KingsNet.biz All Rights Reserved. 闽ICP备05026663号
  • 返回网站顶部