なコメント欄ができました。
コメント欄で絵文字。のつづきの記事です。
今まで、絵文字は最後に入力されてしまいましたが、
カーソルのあるところに入ります
Reference at Hitori-goto :
MozillaでもOK
smiley javascriptを変更します。
<script type="text/javascript" language="javascript">
<!--
// MT Smileys http://mt-hacks.com/mt-smileys.html
// Edited By Noel http://noe.lolipop.jp/
function emoticon (smiley) {
var txtarea = document.comments_form.text;
smiley = ' ' + smiley + ' ';
if(navigator.appName.indexOf("Microsoft") > -1){ // If IE
txtarea.focus();
if (!document.selection) return;
var range = document.selection.createRange();
range.text=smiley;
txtarea.focus();
// return false;
}else{ // If other browser
if (txtarea.createTextRange && txtarea.caretPos) {
var caretPos = txtarea.caretPos;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? smiley + ' ' : smiley;
txtarea.focus();
} else {
var length = txtarea.textLength;
var start = txtarea.selectionStart;
var end = txtarea.selectionEnd;
var txtarea1 = txtarea.value.substring(0, start);
var txtarea2 = txtarea.value.substr(end, length);
txtarea.value = txtarea1 + smiley + txtarea2;
txtarea.focus();
}
}
}
//-->
</script>
リビルドして完了!
絵文字挿入の後、カーソルがtextareaの最後に行ってしまいます。
絵文字の直後に行けばよいのに・・・。
Mozilla対応とか言っても、
Mozilla 1.0.2 (Firefoxじゃないやつ。)とか
Netscape 7.0とかじゃ恐ろしい結末が訪れます。
textareaがクリックした絵文字だけになってしまいます。
これも、条件分けるべきかな・・・。
2005.3.15追記
function emotion → function emoticon
元の関数名がemoticonだそうです。で、直しました。
こんばんわ
Noelさんはjavascriptにお詳しいんですね :blink_star:
スゴイ&尊敬&羨ましいです!!
ちゃんと途中からでも絵文字が挿入できますね
素晴らしすぎ!
寝輔さんはこの際なかったことにしますかね
こんばんは。
いやー、全然くわしくないですよ。
思いっきり理系な人間なので、
こういう事すぐにどうやったら上手く出来るだろう??って
考えてしまうんです。
(そんなわけでやるべき事をやってません)
MTをやるようになって、仕方なくJSやってますし。
本持っていないので、全てネットで検索です
ネスケは何も起こらない方がマシなので、
場合分けしますかねぇ・・・。
そのうち、そのうち。
はじめまして
いつもお世話になっています。
今回、絵文字のこのスクリプトを参考にさせて頂きました!
とても快適になりました(^-^)
ありがとうございました
sofさんはじめまして。
TBとCommentありがとうございます。
実は、ネスケも大丈夫バージョンが頭の中で
出来ているのですが、
忙しくてエントリーしてないのです。
もし出来たらお知らせに行きますね
ではこれからもよろしくお願いします。