mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-21 00:54:53 +08:00
Merge pull request #1241 from Alex-Code/script-filter
Update script filter
This commit is contained in:
@@ -219,19 +219,17 @@ yii = (function ($) {
|
|||||||
|
|
||||||
function initScriptFilter() {
|
function initScriptFilter() {
|
||||||
var hostInfo = location.protocol + '//' + location.host;
|
var hostInfo = location.protocol + '//' + location.host;
|
||||||
var loadedScripts = $('script').filter(function () {
|
var loadedScripts = $('script[src]').map(function () {
|
||||||
return this.src;
|
|
||||||
}).map(function () {
|
|
||||||
return this.src.charAt(0) === '/' ? hostInfo + this.src : this.src;
|
return this.src.charAt(0) === '/' ? hostInfo + this.src : this.src;
|
||||||
}).toArray();
|
}).toArray();
|
||||||
$.ajaxPrefilter('script', function (options, originalOptions, xhr) {
|
$.ajaxPrefilter('script', function (options, originalOptions, xhr) {
|
||||||
var url = options.url.charAt(0) === '/' ? hostInfo + options.url : options.url;
|
var url = options.url.charAt(0) === '/' ? hostInfo + options.url : options.url;
|
||||||
if (loadedScripts.indexOf(url) < 0) {
|
if ($.inArray(url, loadedScripts) === -1) {
|
||||||
loadedScripts.push(url);
|
loadedScripts.push(url);
|
||||||
} else {
|
} else {
|
||||||
var found = pub.reloadableScripts.map(function () {
|
var found = $.inArray(url, $.map(pub.reloadableScripts, function (script) {
|
||||||
return this.charAt(0) === '/' ? hostInfo + this : this;
|
return script.charAt(0) === '/' ? hostInfo + script : script;
|
||||||
}).indexOf(url) >= 0;
|
})) !== -1;
|
||||||
if (!found) {
|
if (!found) {
|
||||||
xhr.abort();
|
xhr.abort();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user