ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Opened 11 years ago

Closed 10 years ago

Last modified 10 years ago

#2328 closed enhancement (fixed)

一部のブラウザでアルバム小窓がカーソルの位置に挿入されない

Reported by: imamura623 Owned by: fukamachi
Priority: minor Milestone: OpenPNE2.13.8
Component: その他 Version: 2.12.x & 2.14.x
Keywords: Cc:

Description (last modified by kudo)

■現象

PC版において、一部のブラウザでアルバム小窓を使った際にカーソル位置にテキストが挿入されず、テキストエリアの一番上に挿入されてしまう。

■環境

  • OS : WindowsXP SP2, Windows2000 Professional
  • ブラウザ : IE6, IE7

■原因

IEでは他のブラウザのようにカーソル位置を取得できないため。

■修正内容

実行ブラウザがIEの場合のみ、別の処理をさせるようにした。ブラウザの判定にはプロパティの有無を使った。

184 	    if (undefined !== window.execScript) {

execScriptプロパティはIEにしか実装されていないため、IEだけ処理を分けることができる。

■関連情報

元のDescription

http://sns.openpne.jp/?m=pc&a=page_fh_diary&target_c_diary_id=16662 より転記

アルバムから貼り付けするときにどうしてもタグが上に貼ってしまう。。。
(とりあえず、カット&ペーストで対応していますが、できることならカーソルの位置でペーストできるとベスト) 

Change History (48)

comment:1 Changed 11 years ago by imamura623

報告された方の環境は下記のとおりです

  • OS : WindowsXP SP2
  • ブラウザ: IE7

comment:2 Changed 11 years ago by kiwa

Priority: minormajor

comment:3 Changed 11 years ago by nakasone

Keywords: 再現待ち removed

以下のような確認を行ってみたところ再現できました。 また、FireFox2.0では正常に動作しました。

■確認ブラウザ

  • IE6

■確認バージョン

  • trunk

■手順

  1. 日記作成画面
  2. タイトル・本文を入力し、適当な位置にカーソルを合わせる
  3. アルバム小窓からアルバムを挿入
  4. アルバムが挿入されている位置を確認

comment:4 Changed 11 years ago by ebihara

Milestone: OpenPNE2.12beta2

comment:5 Changed 11 years ago by ebihara

Owner: changed from nobody to ebihara
Status: newassigned

やります。

comment:6 Changed 11 years ago by ebihara

Priority: majorminor

IEだと別ウィンドウを開いたときにテキストエリアのカーソル位置情報が消えるのが原因っぽいですね。

調査・対応が難しいので優先度低めで取り組みたいです。

comment:7 Changed 11 years ago by ebihara

Owner: changed from ebihara to nobody
Status: assignednew

他のバグ修正を優先します。手放します。

comment:8 Changed 11 years ago by ebihara

Milestone: OpenPNE2.12beta2OpenPNE2.12beta3

次のリリースに回します

comment:9 Changed 11 years ago by ogawa

Version: 2.11.x2.12.x & 2.13.x

comment:10 Changed 11 years ago by ogawa

Milestone: OpenPNE2.12beta3OpenPNE2.12RC1

comment:11 Changed 11 years ago by ebihara

Milestone: OpenPNE2.12RC1OpenPNE2.12RC2

comment:12 Changed 11 years ago by ebihara

Priority: minormajor

フォーカスが外れる直前にカーソル位置をBookmarkしておくという策は採れるかもしれません。

comment:13 Changed 11 years ago by ebihara

IE の場合のみ、 textarea に対して、

     document.getElementById("mce_editor_textarea").onblur = function() {
        var rng = this.createTextRange();
        var bk = rng.getBookmark();
        this.focus();
        rng.moveToBookmark(bk);
     };

このようなコードを書くことで、フォーカスが外れた瞬間に現在のカーソル位置を記憶し、戻すことができるようになります。

これを活用していく方向で実現したいです。

comment:14 Changed 11 years ago by ebihara

Owner: changed from nobody to ebihara
Status: newassigned

チャレンジしてみます。

comment:15 Changed 11 years ago by ebihara

Priority: majorminor

comment:16 Changed 11 years ago by ebihara

Milestone: OpenPNE2.12RC2OpenPNE2.12.1

comment:17 Changed 11 years ago by ogawa

Keywords: OpenPNE2.13.2 added

comment:18 Changed 11 years ago by ebihara

Milestone: OpenPNE2.12.1OpenPNE2.12.2

comment:19 Changed 11 years ago by ebihara

Milestone: OpenPNE2.12.2OpenPNE2.12.3

window.open() によってダイアログを表示するのをやめるというのがシンプルな対処方法かもしれません。

comment:20 Changed 11 years ago by ebihara

Milestone: OpenPNE2.12.3

最初は開発版のみで対応します。

comment:21 Changed 11 years ago by kiwa

#2899のテスト中に同様の現象が発生しました。

comment:22 Changed 11 years ago by kiwa

Keywords: OpenPNE2.13.3 added; OpenPNE2.13.2 removed

comment:23 Changed 11 years ago by ebihara

Type: defectenhancement

comment:24 Changed 11 years ago by ebihara

Keywords: OpenPNE2.13.3 removed

comment:25 Changed 10 years ago by ebihara

Owner: changed from ebihara to nobody
Status: assignednew

comment:26 Changed 10 years ago by kiwa

Milestone: OpenPNE2.13.8

ちょっと優先度あげたいです。

comment:27 Changed 10 years ago by fukamachi

Owner: changed from nobody to fukamachi
Status: newassigned

修正します。とりあえずは仕様変更ではなく、comment:13の海老原さんの方法で修正したいと思います。

comment:28 Changed 10 years ago by fukamachi

r11274、r11275で修正しました。

comment:29 Changed 10 years ago by fukamachi

Keywords: 確認中 added

イベントが正しく追加されなかったため、windowロード後に追加するよう修正

r11278

comment:30 Changed 10 years ago by fukamachi

branch上でr11280で修正しました。

comment:31 Changed 10 years ago by fukamachi

r11284で修正しました。
public_html/js/pne_decoration.js の関数に、IE用の動作部分を追加しました。

comment:32 Changed 10 years ago by fukamachi

r11286 で追加修正
.js.srcで修正されていない箇所があったので修正

comment:33 Changed 10 years ago by fukamachi

Keywords: 差し戻し added; 確認中 removed

Windows 2000 Pro IE6

の環境でテストしたところ、正常に動作していなかったので自分で差し戻しておきます。

comment:34 Changed 10 years ago by fukamachi

Keywords: 確認中 added; 差し戻し removed

r11292で修正しました。

comment:35 Changed 10 years ago by fukamachi

Keywords: 差し戻し added; 確認中 removed

カーソル位置への挿入に、expand()は使わなくてもいいみたいです

修正すべき内容

-     selection.expand("character"); 
-     if (selection.text === "") { 
-         selection.text = str + selection.text + "\n"; 
-     } else { 
-         selection.text = str + selection.text; 
-     }
+     selection.text = str + selection.text;

時間があるときに修正します。

comment:36 Changed 10 years ago by fukamachi

Keywords: 確認中 added; 差し戻し removed

r11317で修正しました。

comment:37 Changed 10 years ago by kudo

Keywords: 差し戻し added; 確認中 removed

FireFox3.0では修正を確認できましたが、IE6で確認したところ修正されていません。

  • 確認ブラウザ:IE6
  • 確認バージョン:trunk

日記の作成で適当な文字列を本文に入力し任意の位置にカーソルを移動後

アルバムの挿入を行うと、本文の一番上に挿入されてしまいます。

comment:38 Changed 10 years ago by fukamachi

r11292時点ではWin2000, IE6で動作確認したのですが、
r11317の変更後に動かなくなったのかもしれません。
申し訳ないです。時間があるとき(明日)に修正します

comment:39 Changed 10 years ago by fukamachi

r11418時点で確認しましたが、再現しませんでした。

  • 確認OS : Windows2000
  • 確認ブラウザ : IE6
  • 確認バージョン : trunk(r11418)

comment:40 Changed 10 years ago by fukamachi

Keywords: 確認中 added; 差し戻し removed

開発版へのマージ忘れが原因でした。

r11515でマージしましたので、再確認お願いします。

comment:41 Changed 10 years ago by nagasawa

Keywords: 差し戻し added; 確認中 removed

firebugでjsのエラーが出ています、firefox3では動作上問題ありませんでしたが
IETesterでIE6をテストしたところエラーが出てしまい正常に挿入されませんでした。

comment:42 Changed 10 years ago by nagasawa

エラー内容について追記します。

  • エラー内容
    • t.editor is null
  • ファイル
    • js/tiny_mce/tiny_mce_popup.js?r7140 23行目

comment:43 Changed 10 years ago by fukamachi

上の内容とは関係ないですが、JSLintで警告が出ていたのでr11518で修正しました。

  • 値を必ずしも返さない関数がある
  • セミコロン忘れ
  • 変数の再定義
  • 条件文での == の使用(===を使用して厳密化)

comment:44 Changed 10 years ago by fukamachi

Description: modified (diff)
Keywords: 確認中 added; 差し戻し removed

comment:45 Changed 10 years ago by fukamachi

アルバム小窓を開いた際に42のエラーが出る問題は、今チケットの修正範囲外であり、安定版にも同様の不具合が見つかったため、別チケット(#3893)で対応します。

comment:46 Changed 10 years ago by kudo

Resolution: fixed
Status: assignedclosed

#3897:一部のブラウザでアルバム小窓がカーソルの位置に挿入されない不具合修正のコードチェック

上のチケットでコードチェックを行います。

IETesterでの動作テストで出たエラーは#3893で修正してください。firefox3、IE6では動作上問題ありませんでしたので、今回はこれで閉じます。

comment:47 Changed 10 years ago by kudo

Description: modified (diff)
Keywords: 確認中 removed

comment:48 Changed 10 years ago by kudo

Description: modified (diff)
Note: See TracTickets for help on using tickets.