什么是zepto相当于jQuery.getScript()?我需要用两个库动态加载JavaScript文件。
答案 0 :(得分:7)
此作品附加到zepto.js!
;(function ($) {
$.getScript = function(src, func) {
var script = document.createElement('script');
script.async = "async";
script.src = src;
if (func) {
script.onload = func;
}
document.getElementsByTagName("head")[0].appendChild( script );
}
})($)
答案 1 :(得分:3)
;(function($){
$.getScript = function (url, success, error) {
var script = document.createElement("script"),
$script = $(script);
script.src = url;
$("head").append(script);
$script.bind("load", success);
$script.bind("error", error);
};
})(Zepto);
这部分是从Zepto.ajaxJSONP
撕掉的。
答案 2 :(得分:0)
我一直在寻找相同的东西,我发现标准的$ .ajax调用将在dataType === "script"
时评估响应。我将其实现为Zepto插件,如下所示:
(function ($) {
var getScript = function (url, callback, options) {
var settings = $.extend({
'url': url,
'success' : callback || function () {},
'dataType' : 'script'
}, options || {});
$.ajax(settings);
};
$.getScript = getScript;
}($ || Zepto));
它应该使用与jQuery版本相同的语法,除了我添加了options
(3rd)参数以允许将任意选项传递给ajax请求。