Skip to content

Commit

Permalink
fix(css-loader): ensure CSS loader uses loading patch for PhantomJS 1.9
Browse files Browse the repository at this point in the history
  • Loading branch information
booleanbetrayal committed Feb 2, 2016
1 parent f0a2477 commit e393504
Showing 1 changed file with 14 additions and 8 deletions.
22 changes: 14 additions & 8 deletions src/ocLazyLoad.loaders.common.js
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@

/*
The event load or readystatechange doesn't fire in:
- PhantomJS 1.9 (headless webkit browser)
- iOS < 6 (default mobile browser)
- Android < 4.4 (default mobile browser)
- Safari < 6 (desktop browser)
Expand All @@ -85,17 +86,22 @@
if(!uaCssChecked) {
var ua = $window.navigator.userAgent.toLowerCase();

// iOS < 6
if(/iP(hone|od|ad)/.test($window.navigator.platform)) {
var v = ($window.navigator.appVersion).match(/OS (\d+)_(\d+)_?(\d+)?/);
if (ua.indexOf('phantomjs/1.9') > -1) {
// PhantomJS ~1.9
useCssLoadPatch = true;
} else if (/iP(hone|od|ad)/.test($window.navigator.platform)) {
// iOS < 6
var v = $window.navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/);
var iOSVersion = parseFloat([parseInt(v[1], 10), parseInt(v[2], 10), parseInt(v[3] || 0, 10)].join('.'));
useCssLoadPatch = iOSVersion < 6;
} else if(ua.indexOf("android") > -1) { // Android < 4.4
var androidVersion = parseFloat(ua.slice(ua.indexOf("android") + 8));
} else if (ua.indexOf('android') > -1) {
// Android < 4.4
var androidVersion = parseFloat(ua.slice(ua.indexOf('android') + 8));
useCssLoadPatch = androidVersion < 4.4;
} else if(ua.indexOf('safari') > -1 && ua.indexOf('chrome') == -1 && ua.indexOf('phantomjs') == -1) {
var safariVersion = parseFloat(ua.match(/version\/([\.\d]+)/i)[1]);
useCssLoadPatch = safariVersion < 6;
} else if (ua.indexOf('safari') > -1) {
// Safari < 6
var versionMatch = ua.match(/version\/([\.\d]+)/i);
useCssLoadPatch = versionMatch && versionMatch[1] && parseFloat(versionMatch[1]) < 6;
}
}

Expand Down

0 comments on commit e393504

Please # to comment.