diff --git a/respond.parser.js b/respond.parser.js index 50aa64f8..33be1ae8 100644 --- a/respond.parser.js +++ b/respond.parser.js @@ -7,37 +7,31 @@ stack = [], media = [], queries = [], - inMediaQuery = false, - inDoubleString = false, - inSingleString = false; + inMediaQuery = false; while (index < len) { switch (str[index]) { case '{': - if (!inDoubleString && !inSingleString) { - stack.push('{'); - if (stack.length === 2) { - inMediaQuery = true; - } + stack.push('{'); + if (stack.length === 2) { + inMediaQuery = true; } break; case '}': - if (!inDoubleString && !inSingleString) { - stack.pop(); - if (stack.length === 0 && inMediaQuery) { - // We might be in a media query! - if (media.length) { - var start = media.pop(); - queries.push(str.substring(start, index)); - } - inMediaQuery = false; + stack.pop(); + if (stack.length === 0 && inMediaQuery) { + // We might be in a media query! + if (media.length) { + var start = media.pop(); + queries.push(str.substring(start, index)); } + inMediaQuery = false; } break; case '@': - if (!inDoubleString && !inSingleString && str.substring(index + 1, index + 6) === 'media') { + if (str.substring(index + 1, index + 6) === 'media') { var start = index; // Zip forward to the start of the media query. while (str[index] !== '{' && index++ < len); @@ -53,16 +47,17 @@ } break; + // Doubley quoted strings. case '"': - console.log('inDoubleString'); - inDoubleString = (!inSingleString && !inDoubleString); + while (str[++index] !== '"'); break; + // Singley quoted strings. case "'": - console.log('inSingleString'); - inSingleString = (!inDoubleString && !inSingleString); + while (str[++index] !== "'"); break; + // Comments. case "/": if (str[index + 1] == '*') { index += 2; diff --git a/respond.src.js b/respond.src.js index 245f5287..ca75805b 100644 --- a/respond.src.js +++ b/respond.src.js @@ -253,7 +253,7 @@ })( this, (function( win ){ - return false; + //for speed, flag browsers with window.matchMedia support and IE 9 as supported if( win.matchMedia ){ return true; }