【问题标题】:jQuery - Error: unsupported pseudo: visiblejQuery - 错误:不支持的伪:可见
【发布时间】:2018-03-18 06:11:28
【问题描述】:

在互联网上,我看到大量使用 :visbile 伪选择器的示例(用于过滤 display:none;)。

但是当我尝试使用它时,jQuery 给出了一个错误:

未捕获的错误:语法错误,无法识别的表达式:不支持 伪:可见 - jquery.min.js:2


这就是我所做的:

function initSimpleTinyMCE(selector) {
    console.log(selector+':visible');    // .simple-tinymce:visible
    tinymce.init({
        selector: selector+':visible',
    });
}

【问题讨论】:

    标签: javascript jquery css css-selectors pseudo-class


    【解决方案1】:

    如果你使用的是 jQuery TinyMCE,你可以这样使用它:

    function initSimpleTinyMCE(selector) {
        $(selector+':visible').tinymce({
        	// Options
        });
    }
    
    initSimpleTinyMCE('.simple-tinymce');
    .hidden {
      display:none;
    }
    <script src="https://cdnjs.cloudflare.com/ajax/libs/tinymce/4.5.6/tinymce.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/tinymce/4.5.6/jquery.tinymce.min.js"></script>
    
    <textarea class="simple-tinymce"></textarea>
    
    <textarea class="simple-tinymce hidden"></textarea>

    【讨论】:

      【解决方案2】:

      Tiny-MCE 仅支持 css 选择器。 :visible 伪选择器特定于 jQuery,因此不能以这种方式使用。假设您在项目中使用 jQuery,这样的事情会起作用:

      funciton initSimpleTinyMCE(selector)
      {
          var element = jQuery(selector+":visible").first(); //Just in case the selector matches multiple elements.
          tinymce.init({
              target: element[0]
          });
      }
      

      在尝试初始化 Tiny-MCE 之前,您可能还需要执行检查以确保选择器与 dom 中的某些内容匹配。

      【讨论】:

        【解决方案3】:

        你可以这样使用function initSimpleTinyMCE(selector) { console.log($(selector+':visible'));tinymce.init({selector: $(selector+':visible'),});}

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-08-07
          • 2013-12-11
          • 1970-01-01
          • 2016-09-05
          • 2012-06-30
          • 2013-04-17
          • 1970-01-01
          相关资源
          最近更新 更多