« Safari 2.0.3でtextbox中のキャレットの位置の処理が変わった? | メイン | JSON::Syckでundef⇒nullへの変換がほしい »

Safari 2.0.3 supports setSelectionRange

Mac OS X 10.4.4に含まれるSafari 2.0.3でFirefoxと同じく、setSelectionRange、selectionStart、selectionEndがサポートされたようです。

<input type="text" id="textfield" name="textfield" value="foo"/>
<script type="text/javascript">
var ele = document.getElementById('textfield');
for(i in ele){
    document.write(i + " = " + ele[i] + "<br />");
}
</script>


とした、結果の中に

setSelectionRange = [function]
selectionStart = 3
selectionEnd = 3

と入ってます。

見ていると、contentEditableなんていうのもあって、

<div contenteditable="true">
この文章はブラウザ上で編集できます。
</div>

というのも動く。編集ができちゃう。

↓お試し用

IEや最新のSafariの場合、この文章はクリックすると編集できます。


前から動いたっけ??

トラックバック

この一覧は、次のエントリーを参照しています: Safari 2.0.3 supports setSelectionRange:

» Safari の JavaScript の不備 from Days on the Moon
ぱっと見はいいんだけど細かいところでちょこちょこ穴があるような気がする Safari (というより Apple WebKit) ですが、どのような穴がいつ... [詳しくはこちら]

» Safari でも selectionStart, selectionEnd がサポートされている from Travellers Tale
P_BLOG でのスマイリーボタンやタグボタンでの挿入位置 事の発端は、P_BLOG でスマイリーボタンやタグボタンを押したときに、Safari ではカー... [詳しくはこちら]

コメント

すみません、質問です。
contenteditableを使ってみたのですが、初期状態では日本語入力がOFFのままになってしまいます。
かぜぶろさんのサンプルでは日本語入力ONになっていると思うのですが、何か他に指定しなくてはならないものがあるのでしょうか?

YKさん
このページのサンプルを使って、Safariの2.0.3(tiger)と1.3.2(panther)とで試してみましたが、日本語入力できました。ちなみにことえりです。
あと可能性として考えられるのはcontent-typeぐらいでしょうか。

コメントを投稿