[18] エディタに機能ボタン追加
今回は、<、>、&を<、>、&に変換するボタン。
編集するファイル;
edit.js(nucleus\javascript内)
PAGEFACTORY.php(nucleus\libs内)
1)edit.jsの編集
105行目付近
function boldThis() { insertAroundCaret('<b>','</b>'); } の下にfunction entitiesThis() { entitiesCaret('',''); } という行を追加。(挿入箇所は前後してもOK)250行目付近
function insertAroundCaret (textpre, textpost)
というfunction節のあとに次のfunction追加。
// the selected text to entities
function entitiesCaret (textpre, textpost) {
var textEl = lastSelected;
if (textEl && textEl.createTextRange && textEl.caretPos) {
var caretPos = textEl.caretPos;
caretPos.text = caretPos.text.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
} else {
document.getElementById('input' + nonie_FormType).value += textpre + textpost;
}
updAllPreviews();
} 2)PAGEFACTORY.phpの編集
$this->_jsbutton('bold',"boldThis()",_ADD_BOLD_TT ." (Ctrl + Shift + B)");
という行の上に、次の1行を追加。
$this->_jsbutton('entities',"entitiesThis()","特殊文字変換");
※日本語を直接入れたのでファイル上書き保存の際は文字コードに留意。もしくは言語ファイルを適用させるようにした方がbetterかな。
この2つのファイルを上書きFTP転送したら機能します。
ただし、ボタンのgifファイルはこれから作ります(^_^;
以下、あとがき。
追加してるfunctionは前後にタグ挿入のfunctionをそのままパクったので、余計な部分がたくさんありますが、ご勘弁を。
javascriptは全然わかんないので下手にさわるとドツボにはまるし。
ひたすらgoogleで検索かけて、それっぽいものをペーストしただけです(^_^;
ホント、直感的な文法じゃないので、いつもサンプルを探しまくるだけ。
<ul><li>...</li></ul>ボタンも作りたいなぁ。改行ごとにタグ挿入ってできるかなぁ、私に。
また時間のあるときにパクリの旅をしてみよう。
ところで、このボタン、使うのは私だけかもな(笑)
Posted 06/27/03 by nakahara21 | Filed under: Tips
Comments
Add Comment