是否可以在wordpress可视化编辑器的tinymce自定义按钮的addcommand区域内创建一个函数?
ed.addCommand("green_command", function() {
if (jQuery(".shortcode-container").css("display") == "block")
{
jQuery(".shortcode-container").css("display","none")
}
else if(jQuery(".shortcode-container").css("display") == "none")
{
jQuery(".shortcode-container").css("display","block")
}
else
{
jQuery(".mce-toolbar-grp").append("<div style=\" border: 3px solid rgb(132, 43, 43) \" class=\" shortcode-container \"><table style=\"background: rgb(84, 86, 87); padding: 10px;\" class=\"the_projects\"> </table></div>");
// var selected_text = ed.selection.getContent();
var return_text = "";
// ed.execCommand("mceInsertContent", 0, return_text);
//
var t = {action: "GET_ALL_BOXES", data: {}};
jQuery.post(ajaxurl, t, function(t)
{
//var thediv = "<table style=\"width: 100px; height: 100px; background: black;\" class=\"the_projects\"> </table>";
jQuery(".the_projects").html("");
jQuery.each(t, function(t, n)
{
var r = n.box.replace(/\\/g, "");
var id = n.id;
var name = n.name;
var shortcode = n.short_code.replace("test",n.id);
jQuery(".the_projects").append('<span value="' + shortcode + '" class="button_code button" style="margin:0px 10px">' + name + '</span>' );
});
//jQuery(".the_projects").css("display","block");
})
}
jQuery(".button_code").click(function(){
alert("yes");
})
});
正如您在单击按钮时所看到的那样,它会动态创建一个内部包含多个元素的div,包括一个按钮。我想要的是当点击动态创建的按钮时,我想提醒它的价值。但它不能以某种方式工作。
答案 0 :(得分:1)
您需要使用;
结束相应的行 - 很少会丢失,这可能是导致此行无效的原因。
将代码重组为
$('<span value="' + shortcode + '" class="button_code button" style="margin:0px 10px">' + name + '</span>')
.appendTo(".the_projects")
.click(function(){
alert("yes");
});
也是一个好主意,制作
jQuery(".button_code").click(function(){
alert("yes");
})
多余的。