六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 21|回复: 0

]如何确保JavaScript的执行顺序 –之jQuery1.5.1与jQuery1.4.4的差异

[复制链接]

升级  85%

884

主题

884

主题

884

主题

探花

Rank: 6Rank: 6

积分
2700
 楼主| 发表于 2013-1-29 09:38:05 | 显示全部楼层 |阅读模式
我们发现jQuery.html函数在动态加载跨域JavaScript时,在Firefox和Opera中可以按照引入顺序执行,而在IE,Chrome和Safari中都不能确保执行顺序。  
经过分析,我们发现jQuery.html在处理跨域静态JS文件时,并非采用的同步AJAX(也存在同源策略的限制),而是在head中添加script标签来完成的。
 
我们先来简单回顾下HTML源代码(test2_1.htm):
<div style="border: 1pt solid #7f7f7f; padding: 1pt 4pt; margin-left: 10.5pt; margin-right: 0cm;">
<html>

<head>

    <title></title>

    <script src="js/jquery-1.4.4.js" type="text/javascript"></script>

    <script>

        $(function(){

            $('#container').html('<script src="http://test1.sanshi.me/jsorder/service.ashx?file=js/jquery-ui.js&delay=2000" type="text\/javascript"><\/script>' + '<script>alert(typeof(jQuery.ui));<\/script>');

        });

    </script>

</head>

<body>

    <div id="container">

    </div>

</body>

</html>
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表