为动态加载的新元素添加tinymce
我的页面包含5个div,可由Tinymce内联编辑器编辑。通过点击一个按钮(如此动态),我可以轻松地用Jquery提交5个新的。但是当然新的不受Tinymce的影响,因为init已经被加载了。。。我如何激活tinymce以获得新的div 我的HTML:为动态加载的新元素添加tinymce,tinymce,Tinymce,我的页面包含5个div,可由Tinymce内联编辑器编辑。通过点击一个按钮(如此动态),我可以轻松地用Jquery提交5个新的。但是当然新的不受Tinymce的影响,因为init已经被加载了。。。我如何激活tinymce以获得新的div 我的HTML: <div id=\"billetdroit\"> <div id=\"divtitre\"><h1 class=\"editable\">blablabla</h1><
<div id=\"billetdroit\">
<div id=\"divtitre\"><h1 class=\"editable\">blablabla</h1></div>
<div class=\"editable\" id=\"tiny_01\">blablabla2</div>
</div>
<div id=\"billetdroit\">
<div id=\"divtitre\"><h1 class=\"editable\">blablabla</h1></div>
<div class=\"editable\" id=\"tiny_02\">blablabla2</div>
</div>
<div id=\"billetdroit\">
<div id=\"divtitre\"><h1 class=\"editable\">blablabla</h1></div>
<div class=\"editable\" id=\"tiny_03\">blablabla2</div>
</div>
...
...
有解决办法吗?
谢谢
编辑:
我试着说:
$(document).ready(function() {
var track_click = 1; //track user click on "load more" button, righ now it is 0 click
var total_pages = Globals.total_pages;
// $('#results').load("loadmore.php", {'page':track_click}, function() {track_click++;}); //initial data to load
$(".load_more").click(function (e) { //user clicks on button
$(this).hide(); //hide load more button on click
$('.animation_image').show(); //show loading image
if(track_click <= total_pages) //user click number is still less than total pages
{
//post page number and load returned data into result element
$.post('loadmore.php',{'page': track_click}, function(data) {
$(".load_more").show(); //bring back load more button
$("#results").append(data); //append data received from server
//scroll page smoothly to button id
$("html, body").animate({scrollTop: $("#load_more_button").offset().top}, 500);
//hide loading image
$('.animation_image').hide(); //hide loading image once data is received
track_click++; //user click increment on load button
}).fail(function(xhr, ajaxOptions, thrownError) { //any errors?
alert(thrownError); //alert with HTTP error
$(".load_more").show(); //bring back load more button
$('.animation_image').hide(); //hide loading image once data is received
});
if(track_click >= total_pages-1) //compare user click with page number
{
//reached end of the page yet? disable load button
$(".load_more").attr("disabled", "disabled");
}
}
$.getScript('include/tinymce/tinymce.min.js', function() {
tinymce.init({
selector: "textarea",
language: 'fr_FR',
image_advtab: true,
menubar:false,
forced_root_block: false,
plugins: ["link","code","media","image","textcolor", "emoticons"],
toolbar: "bold italic forecolor backcolor alignleft aligncenter alignright alignjustify link unlink image media emoticons"
});
tinymce.init({
selector: "h1.editable",
language: 'fr_FR',
inline: true,
toolbar: "undo redo",
menubar: false
});
tinymce.init({
selector: "div.editable",
language: 'fr_FR',
image_advtab: true,
menubar:false,
inline: true,
forced_root_block: false,
plugins: ["link","code","media","image","textcolor", "emoticons"],
toolbar: "bold italic forecolor backcolor alignleft aligncenter alignright alignjustify link unlink image media emoticons"
});
});
});
});
$(文档).ready(函数(){
var track_click=1;//跟踪用户单击“加载更多”按钮,现在是0单击
var total_pages=Globals.total_pages;
//$(“#results”).load(“loadmore.php”,{'page':track_click},function(){track_click++});//要加载的初始数据
$(“.load_more”)。单击(函数(e){//用户单击按钮
$(this).hide();//单击时隐藏加载更多按钮
$('.animation_image').show();//显示正在加载的图像
if(track\u click=total\u pages-1)//将用户单击与页码进行比较
{
//到达页面末尾了吗?禁用加载按钮
$(“.load_more”).attr(“已禁用”、“已禁用”);
}
}
$.getScript('include/tinymce/tinymce.min.js',function(){
tinymce.init({
选择器:“文本区域”,
语言:“fr_fr”,
图像\u advtab:正确,
梅努巴:错,
强制根块:false,
插件:[“链接”、“代码”、“媒体”、“图像”、“文本颜色”、“表情”],
工具栏:“粗体斜体前景色背景色对齐左对齐中对齐右对齐对齐对齐链接取消链接图像媒体表情”
});
tinymce.init({
选择器:“h1.可编辑”,
语言:“fr_fr”,
是的,
工具栏:“撤消重做”,
菜单栏:错误
});
tinymce.init({
选择器:“div.editable”,
语言:“fr_fr”,
图像\u advtab:正确,
梅努巴:错,
是的,
强制根块:false,
插件:[“链接”、“代码”、“媒体”、“图像”、“文本颜色”、“表情”],
工具栏:“粗体斜体前景色背景色对齐左对齐中对齐右对齐对齐对齐链接取消链接图像媒体表情”
});
});
});
});
但是如果没有成功…有一种简单的方法可以初始化tinymce编辑器:
tinyMCE.execCommand("mceAddControl", false, 'your_div_id');
为什么不在新添加的元素上调用tinymce init?!这就是我想要的。。。但是,请怎么做?就像您对静态元素所做的一样,在添加这些元素后,只需在单击按钮处理程序中调用它就可以了。您能给出确切的语法吗?首先,ID在上下文页面上必须是唯一的!这里的代码无效,请修复此问题,否则许多事情将无法工作。第二,你自己试试,然后告诉我你被困在哪里了。但我讨厌tinymce,我不使用也不想使用。谢谢。我采用了另一种方式:在生成每个新div之后放置tinymceinit()。它是有效的。。。
tinyMCE.execCommand("mceAddControl", false, 'your_div_id');