操作
Bug(バグ) #2483
完了ガジェット設定でのドラッグ(移動)が機能しない
開始日:
2011-10-12
期日:
進捗率:
0%
予定工数:
3.6 で発生するか:
Yes (はい)
3.8 で発生するか:
説明
http://sns.openpne.jp/communityTopic/7623 より転記
トピック¶
【質問テンプレート】 ・症状 Internet Explorer9を使用しております。 管理画面のデザイン設定→ガジェット設定でインフォメーションやアクティビティ設定の位置を変更しようと思いドラッグして移動させても選択(反転)するだけでパーツの移動が出来ません。 ためしにFireFox、Safariをインストールして試してみましたがそちらは正常にドラッグできました。 以下googleで調べたサイトにて試してみたことがありましたが改善できませんでした。 IEでJavaScriptが有効にならない(設定は合っているのに) http://kyms.ne.jp/pc/item_117.html 同じような問題で悩んでおられる方、改善できた方がおられましたら情報をよろしくお願いいたします。 OpenPNEのバージョンは3.6beta13から3.6.0まで運営してきましたがいづれも同症状でした。 ・OpenPNEのバージョン [OpenPNE3.6.0] ・運用環境 [自宅サーバ(Fedora15)] ・使用ソフトのバージョン [PHP5.3.6 MySQL5.5.14] ブラウザはInternet Explorer 9を使用していますが出来たら8にグレードダウンして後ほど試してみます。
このトピックについてコメントがありましたので、そちらも転記します。¶
ただ今Internet Explorer 8にグレードダウンしてみました。 そうしたらやはりちゃんとドラッグでの移動は出来ました。 この不具合はIE9独特の不具合のようです。 質問にトピ立ててしまいましたがここで締め切りたいと思います。
Yuma Sakata さんがほぼ13年前に更新
- ステータス を Won't fix(対応せず) から New(新規) に変更
- 3.6 で発生するか を Yes (はい) にセット
- 3.4 で発生するか を Yes (はい) にセット
Kousuke Ebihara さんが12年以上前に更新
- ステータス を New(新規) から Accepted(着手) に変更
- 担当者 を Kousuke Ebihara にセット
prototype.js を 1.7.0 に、 script.aculo.us を 1.9.0 にバージョンアップすることで問題が解決されることを確認しました。
ただし、 prototype.js のバージョンアップは影響が広範に及ぶため、できるだけインパクトの少ない形で対処したいと思います。
Yuya Watanabe さんが12年以上前に更新
master 環境では再現できませんでしたが, stable-3.6.x および stable-3.4.x での再現を確認しました.
また, prototype.js の違いのみを見た処
下記修正の時点の ソースを用いたところ,動作したことを確認しました.このコミットは 1.7_rc3 であるときに追加されたものです.
https://github.com/sstephenson/prototype/commit/a7cff523c32420b9ab1560b1c1f8bcece66bd567
上記修正を OpenPNE に入っている prototype.jp 1.6.0.3 に下記のような修正を適用したところ stable-3.6.x および stable-3.4.x で修正されたことを確認しました.
diff --git a/plugins/sfProtoculousPlugin/web/js/prototype.js b/plugins/sfProtoculousPlugin/web/js/prototype.js index dfe8ab4..5a26f90 100644 --- a/plugins/sfProtoculousPlugin/web/js/prototype.js +++ b/plugins/sfProtoculousPlugin/web/js/prototype.js @@ -3815,8 +3815,10 @@ Object.extend(Event, { Event.Methods = (function() { var isButton; + var IE_LEGACY_EVENT_SYSTEM = (window.attachEvent && !window.addEventListener); - if (Prototype.Browser.IE) { + if (IE_LEGACY_EVENT_SYSTEM) { + // IE's event system doesn't map left/right/middle the same way. var buttonMap = { 0: 1, 1: 4, 2: 2 }; isButton = function(event, code) { return event.button == buttonMap[code];
Yuya Watanabe さんが12年以上前に更新
- ステータス を Accepted(着手) から Invalid(無効) に変更
このチケットの問題は #2617 「prototype.js や script.aculo.us を使用している箇所を全て jQuery で置き換える」で prototype.js を用いない状態になったため,問題が解決されたとして invalid としてクローズします.
操作