Вход Регистрация
Файл: library/wysihtml5/src/dom/has_element_with_class_name.js
Строк: 46
<?php
/**
 * High performant way to check whether an element with a specific class name is in the given document
 * Optimized for being heavily executed
 * Unleashes the power of live node lists
 *
 * @param {Object} doc The document object of the context where to check
 * @param {String} tagName Upper cased tag name
 * @example
 *    wysihtml5.dom.hasElementWithClassName(document, "foobar");
 */
(function(wysihtml5) {
  var 
LIVE_CACHE          = {},
      
DOCUMENT_IDENTIFIER 1;

  function 
_getDocumentIdentifier(doc) {
    return 
doc._wysihtml5_identifier || (doc._wysihtml5_identifier DOCUMENT_IDENTIFIER++);
  }
  
  
wysihtml5.dom.hasElementWithClassName = function(docclassName) {
    
// getElementsByClassName is not supported by IE<9
    // but is sometimes mocked via library code (which then doesn't return live node lists)
    
if (!wysihtml5.browser.supportsNativeGetElementsByClassName()) {
      return !!
doc.querySelector("." className);
    }

    var 
key         _getDocumentIdentifier(doc) + ":" className,
        
cacheEntry  LIVE_CACHE[key];
    if (!
cacheEntry) {
      
cacheEntry LIVE_CACHE[key] = doc.getElementsByClassName(className);
    }

    return 
cacheEntry.length 0;
  };
})(
wysihtml5);
?>
Онлайн: 1
Реклама