2

jQuery 是否在 DOM 中创建一个script节点,将源设置为请求,然后删除该script节点?

我在萤火虫中调试它,我从来没有注意到任何额外的script节点被添加。想知道 jQuery 是如何处理这个问题的吗?

例如

$(document).ready(
    function(){
        $.ajax({
          url: "...",
          type: 'GET',
          dataType: 'jsonp'
        });
    }
);
4

2 回答 2

1

是的,jQueryscript在 DOM 中创建了一个元素。(这是 JSON-P 可以工作的唯一方式。)

于 2012-10-17T13:45:14.993 回答
1

看一下jQuery.ajaxTransportjQuery源码中的函数源码。它返回一个对象,其send元素包含一个将脚本添加到 DOM 的函数。这个脚本元素有一个onloadand onreadystatechange 处理程序,可以将自己从 DOM 中删除。

于 2012-10-17T14:02:30.890 回答