Chciałbym, jeśli to możliwe, użyć TinyMCE (edytor WYSIWYG), aby umożliwić użytkownikom tworzenie list wypunktowanych i tylko wypunktowanych list. Ktoś zna jakiś sposób?TinyMCE: Można ograniczyć, aby zezwalać tylko na pociski?
Dzięki,
Paul
Chciałbym, jeśli to możliwe, użyć TinyMCE (edytor WYSIWYG), aby umożliwić użytkownikom tworzenie list wypunktowanych i tylko wypunktowanych list. Ktoś zna jakiś sposób?TinyMCE: Można ograniczyć, aby zezwalać tylko na pociski?
Dzięki,
Paul
W swojej tinyMCE.init ustawić theme-Advanced-BUTTONS1 po prostu mieć "bullist". Będziesz także musiał ustawić dla zaawansowanych tematów przyciski 2, 3 i 4. Oto pełny przykład:
<html>
<head>
<title>Application Name</title>
<script type="text/javascript" src="tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init({
// General options
mode : "exact",
elements: "description_edit_box",
theme : "advanced",
plugins : "safari,pagebreak,inlinepopups,paste,searchreplace",
// Theme options
theme_advanced_buttons1 : "bullist",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_buttons4 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : true,
// Drop lists for link/image/media/template dialogs
external_link_list_url : "lists/link_list.js"
});
</script>
</head>
<body>
<textarea id="description_edit_box" rows="5" ></textarea>
</body>
</html>
TinyMCE ma dwie opcje, które pomogą przy użyciu zaawansowanych tematu. Pierwszy to theme_advanced_buttons<n>
, który określa, które przyciski są wyświetlane za pomocą edytora. Ponieważ motyw zaawansowany domyślnie definiuje przyciski w trzech wierszach, musisz przedefiniować każdy z nich.
Drugi to valid_elements
, który pozwala TinyMCE usunąć wszelkie niepubliczne znaczniki. Może również przekształcić jeden tag w inny; na przykład możesz chcieć zmienić listy numerowane na listy punktowane. Pamiętaj jednak, że to nie jest bezpieczeństwo; nadal musisz przeprowadzać kontrole po stronie serwera, aby zablokować nieprawidłowe dane wejściowe od złośliwych lub przebiegłych użytkowników.
Jeśli naprawdę chcesz, aby zablokować wszystkie znaczniki z wyjątkiem list punktowanych, połączenie startowych chcieć następujące opcje:
tinyMCE.init({
// Select the advanced theme
theme : "advanced",
// Choose which buttons to show
theme_advanced_buttons1 : "bullist",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
// Which html tags to allow
valid_elements : "-ul/-ol,-li",
// Other options, including what to make editable
mode : ...
});
Jeśli, z drugiej strony, tylko chcesz zapobiec list numerowanych, konfiguracja może bardziej przypominają:
tinyMCE.init({
// Select the advanced theme
theme : "advanced",
// Choose which buttons to show
theme_advanced_buttons1 : "separator,insertdate,inserttime,preview,zoom,separator,forecolor,backcolor",
theme_advanced_buttons2 : "bullist,separator,outdent,indent,separator,undo,redo,separator",
theme_advanced_buttons3 : "hr,removeformat,visualaid,separator,sub,sup,separator,charmap",
// Which html tags to allow
valid_elements : "@[id|class|style|title|dir<ltr?rtl|lang|xml::lang|onclick|ondblclick|" +
"onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|" +
"onkeydown|onkeyup],a[rel|rev|charset|hreflang|tabindex|accesskey|type|" +
"name|href|target|title|class|onfocus|onblur],strong/b,em/i,strike,u," +
"#p[align],-ul[type|compact]/-ol[type|compact],-li,br,img[longdesc|usemap|" +
"src|border|alt=|title|hspace|vspace|width|height|align],-sub,-sup," +
"-blockquote,-table[border=0|cellspacing|cellpadding|width|frame|rules|" +
"height|align|summary|bgcolor|background|bordercolor],-tr[rowspan|width|" +
"height|align|valign|bgcolor|background|bordercolor],tbody,thead,tfoot," +
"#td[colspan|rowspan|width|height|align|valign|bgcolor|background|bordercolor" +
"|scope],#th[colspan|rowspan|width|height|align|valign|scope],caption,-div," +
"-span,-code,-pre,address,-h1,-h2,-h3,-h4,-h5,-h6,hr[size|noshade],-font[face" +
"|size|color],dd,dl,dt,cite,abbr,acronym,del[datetime|cite],ins[datetime|cite]," +
"object[classid|width|height|codebase|*],param[name|value|_value],embed[type|width" +
"|height|src|*],script[src|type],map[name],area[shape|coords|href|alt|target],bdo," +
"button,col[align|char|charoff|span|valign|width],colgroup[align|char|charoff|span|" +
"valign|width],dfn,fieldset,form[action|accept|accept-charset|enctype|method]," +
"input[accept|alt|checked|disabled|maxlength|name|readonly|size|src|type|value]," +
"kbd,label[for],legend,noscript,optgroup[label|disabled],option[disabled|label|selected|value]," +
"q[cite],samp,select[disabled|multiple|name|size],small," +
"textarea[cols|rows|disabled|name|readonly],tt,var,big",
// Other options, including what to make editable
mode : ...
});