【问题标题】:CodeMirror is initially hiddenCodeMirror 最初是隐藏的
【发布时间】:2013-08-13 01:11:31
【问题描述】:

我正在编辑Slightly Modded Options Framework。我将脚本排入functions.interface.php。这是函数

function of_load_only() {
    // add_action('admin_head', 'smof_admin_head');
    wp_enqueue_script("jquery-ui-core");
    wp_enqueue_script("jquery-ui-sortable");
    wp_enqueue_script("jquery-ui-slider");
    wp_enqueue_script("jquery-input-mask", ADMIN_DIR ."assets/js/jquery.maskedinput-1.2.2.js", array("jquery"), false, true);
    wp_enqueue_script("tipsy", ADMIN_DIR ."assets/js/jquery.tipsy.js", array("jquery"), false, true);

    // enqueue codemirror
    wp_enqueue_script("codemirror", ADMIN_DIR . "assets/js/codemirror/codemirror.min.js", array(), "3.15", true);

    // wp_enqueue_script('color-picker', ADMIN_DIR .'assets/js/colorpicker.js', array('jquery'));
    wp_enqueue_script("cookie", ADMIN_DIR . "assets/js/cookie.js", array("jquery"), false, true);
    wp_enqueue_script("smof", ADMIN_DIR ."assets/js/smof.js", array("jquery"), false, true);
    // Enqueue colorpicker scripts for versions below 3.5 for compatibility
    if(!wp_script_is("wp-color-picker", "registered")) {
        wp_register_script("iris", ADMIN_DIR ."assets/js/iris.min.js", array("jquery-ui-draggable", "jquery-ui-slider", "jquery-touch-punch"), false, 1);
        wp_register_script("wp-color-picker", ADMIN_DIR ."assets/js/color-picker.min.js", array("jquery", "iris"));
    }
    wp_enqueue_script("wp-color-picker");

    // Enqueue scripts for file uploader
    if(function_exists("wp_enqueue_media")) {
        wp_enqueue_media();
    }
    do_action("of_load_only_after");
}

Here is a link to the relevant source code.

问题

到目前为止,CodeMirror 的处理比 Ace 简单得多。我遇到的问题是 CodeMirror 最初是隐藏的,直到我在编辑器本身中按下一个键。我在这里阅读了“解决方案”:

我的尝试

这里是代码

$("#custom_css").val("/* Write code here */");
var codemirror_editor = CodeMirror.fromTextArea(document.getElementById("custom_css"), {
    lineNumbers: true,
    matchBrackets: true,
    styleActiveLine: true,
    lineWrapping: true,
    autoCloseBrackets: true,
    showTrailingSpace: true,
    indentUnit: 4,
    indentWithTabs: true,
    viewportMargin: Infinity,
    autofocus: true
});
// codemirror_editor.refresh(); // does not work even on the CodeMirror instance
// setTimeout(codemirror_editor.refresh, 0) // does not work per the CodeMirror has content but won't display until keypress solution

这是在编辑器中按键之前和按键之后显示的两张图像。

【问题讨论】:

  • works when isolated,你的代码中一定有其他东西干扰了启动。显示更多代码,在启动之前您还在该页面上做什么?什么时候注入代码镜像?标记如何?
  • @EliranMalka,已添加更多内容以进一步确定问题。

标签: javascript codemirror


【解决方案1】:

这是admin-style.css 第 422 行中的一个 CSS 问题。将其注释掉,它解决了我的问题!

【讨论】:

    猜你喜欢
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-24
    • 1970-01-01
    • 2014-10-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多