我正在尝试在Javascript中向Wordpress编辑器添加下拉选择和代码按钮。
我发现这个网站已经完成了我只是想稍微修改代码。你可以看到我在这里谈论的内容,你可以从下拉列表中选择一种语言,然后点击该网站上的代码按钮。
http://bililite.com/blog/blogfiles/customeditor.html
jQuery(function ($) {
edButtons.forEach(function (button, index) {
if (button.display == 'code') {
// add language pull down menu
edButtons[index + 1] = { // insert right after the code button
html: function (idPrefix) {
return '<select id="' + idPrefix + 'code_language" data-code-target="' + index + '">' + '<option></option>' + // include a blank option
'<option>' + languages.join('</option><option>') + '</option>' + '</select>';
}
};
}
});
var languages = ['html', 'javascript', 'lisp', 'pdf', 'php', 'vb'];
$('body').on('change', 'select[data-code-target]', function () {
var lang = $(this).val();
// edButtons[$(this).data('code-target')].tagStart = lang ? '<code class="language-' + lang + '" >' : '<code>';
edButtons[$(this).data('code-target')].tagStart = lang ? '<pre><code data-language="' + lang + '">' : '<pre><code>';
});
});
此代码目前插入这样的代码,不是从dropdwon中选择语言......
<code></code>
当语言被选中时......
<code data-language="php"></code>
我需要做的就是将它包装在<pre> the above code here </pre>
标签中。我可以轻松添加上面代码中的开头预标签,但我无法添加结束标签,我真的可以使用一些更了解Javascript的人的帮助
答案 0 :(得分:1)
您应该能够添加与起始标记非常相似的结束标记。试试这个:
edButtons[$(this).data('code-target')].tagEnd = lang ? '</pre></code>' : '</code>';