在互联网上,我看到大量使用:visbile
伪选择器的示例(过滤display:none;
)。
但是当我尝试使用它时,jQuery会出错:
未捕获错误:语法错误,无法识别的表达式:不支持 伪:可见 - jquery.min.js:2
这就是我所做的:
function initSimpleTinyMCE(selector) {
console.log(selector+':visible'); // .simple-tinymce:visible
tinymce.init({
selector: selector+':visible',
});
}
答案 0 :(得分:1)
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中的某些内容匹配。
答案 1 :(得分: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 :(得分:0)
您可以这样使用function initSimpleTinyMCE(selector) { console.log($(selector+':visible'));tinymce.init({selector: $(selector+':visible'),});}