Redactor: HTMLソースを表示した後にスクロールできません

作成日 2019年01月24日  ·  17コメント  ·  ソース: craftcms/redactor

97

すでに報告されていますが、非アクティブのため閉鎖されました。

ここでもまったく同じ問題が発生していますが、スクロールバーが消えず、機能しません。
ウィンドウのサイズを変更すると、もう一度スクロールするまで機能します。

ブラウザコンソール内でエラーは発生しません。

再現するための同じ手順:

  1. redactorフィールドのhtmlソースプラグイン( _button?_ )を有効にします
  2. スクロールバーが表示されるように十分なテキストを貼り付けます
  3. 貼り付けたテキストのhtmlソースを表示する
  4. 下へスクロール
  5. 下にスクロールすると、スクロールバーが消えます(_私にとっては_ではありません)。 ユーザーは上にスクロールできません。試行すると、ページが少し上に「ジャンプ」してから前の位置に戻ります。 すべてのredactorボタンが消えます。

ここでの唯一のことは、カスタムフォーマットをredactor構成に追加していることですが、いくつかのテストの後、違いはありません。

Craft CMS 3.1.3
Redactor 2.3.0

最も参考になるコメント

@angrybrad

https://streamable.com/f6we5

(スクロールバーをクリックしようとする前に待つのは、私がマウスでスクロールしようとしていることです)

全てのコメント17件

まだこれを再現することはできませんが、新しいRedactorバージョンを含む2.3.2のバージョンをリリースしたばかりです。 これはおそらく現在修正されていますが、修正されていない場合はお知らせください。

最新バージョンに更新したばかりで、バグはまだここにあります!

どうやらFirefoxで修正されているようですが、Chrome72ではまだここにあります。

私はWindows10システムを使用しています。

このバグをhttps://imperavi.com/redactor/で再現できますか?

最新バージョンのChromeでWindows10を使用しても同じ問題が発生します。 最新バージョンのcraftと最新バージョンのプラグイン。 コードビューに切り替えると、htmlが表示されますが、スクロールするとすぐにスクロールバーが一番下に移動し、空白のブラックボックスが表示され、スクロールバーがフリーズします。 上記のimperaviページで、同じ量のテキストを追加してビューを切り替えると、コードビューのコードの下に大量の黒いスペースがあります。つまり、エディターはテキストモードと同じ高さを維持しています。 これが問題の一部なのかしら。 現在、コードモードを使用することはできません。

ちょうど気づいたのは、長いテキストビューからコードビューに切り替えたときにのみ発生することです。 空のredactorフィールドがあり、コードビューに切り替えてコードを貼り付けると、フィールド内でスクロールバーが正常に機能します。

@ lettie16 https://imperavi.com/redactor/でこのバグを再現できますか?

このバグをhttps://imperavi.com/redactor/で再現できますか?

こんにちはアンドリス、

いいえ、このサイトで複製することはできません。 しかし、これは比較のようなものではないと思います。これは、クラフトcmsフィールドとの相互作用に関係していると思います。 上で述べたように、コードビューに貼り付けている空のフィールドがある場合は正常に機能しますが、スクロールバーはこのエディターのように編集内にあります。

テキストビューに大量のテキストを貼り付けてからコードビューに切り替えると、問題が発生し、スクロールバーがエディターの外に表示されます。つまり、フリーズするためにスクロールしない場合を除いて、エディターだけでなくフィールドパネル全体をスクロールします。

ビューを切り替えた後、コードがエディターの高さを再計算する方法と関係があるのではないかと思います。

Windows 10、Chrome 72、最新バージョンのCraft3とRedactorでこれを再現するのに苦労しています。 私がどこかでステップを逃した場合に備えて、誰かが行動の簡単なビデオを録画できますか?

@angrybrad

https://streamable.com/f6we5

(スクロールバーをクリックしようとする前に待つのは、私がマウスでスクロールしようとしていることです)

@timoteh hrm ...多分それはマトリックス/スーパーテーブルの中にいることと関係がありますか? composer.jsonファイルとデータベースダンプを[email protected]に送信し、この問題を参照して、使用したビデオのエントリ/フィールドを指定できますか?

マトリックス/スーパーテーブルの外で使用してみましたが、結果は同じです。

@angrybrad 、完了!

@timoteh最初はしばらくしてこれを再現できましたが、元に戻すとできなくなりました。 最新のChrome/Reactor and Craftを使用していることを確認し、それがまだ問題であるかどうかを確認できますか?

@angrybrad
Chromeで試してみましたが、それでも同じです。

グーグルクローム
バージョン73.0.3683.103(公式ビルド)(64ビット)
クラフトCMS3.1.23
墨消し2.3.2

@timoteh多分それは画面サイズ/解像度と関係がありますか? ブラウザを最大化して、どの解像度で実行していますか?

@angrybradはい、最大化されていますが、画面サイズで遊んでも、常に同じ結果が得られます。 私はそれを複数のCraft3セットアップで再現しようとしましたが、いつでもできます!

iOSの同僚はそれを再現できなくなったので、次のように設定します。
image

また、 @ lettie16はどうですか?

Win10 + Chrome 74.0.3729.131 + Craft 3.1.25 +Redactor2.3.3.2でもこの問題が発生しています

このdivを「display:none」に何度も設定し始めると、開発ツールでjavascriptの何かが無限ループに巻き込まれているように見えることに気づきました。

<div class="redactor-styles redactor-in redactor-in-0" dir="ltr" aria-labelledby="redactor-voice-0" role="presentation" contenteditable="true" domtargetshow="" style="display: none;">

その他の注意事項:

  • javascriptがscrollable要素を一番下までスクロールさせているようです。
  • 別のフィールドレイアウトタブをクリックすると停止します(つまり、編集者フィールドを非表示にします)。
  • 投稿が長いと、スクロールするとすぐにはトリガーされないようです。バグが発生する前に、一定量下にスクロールする必要があります。

ソースdivが表示されているときにWYSIWYGコンテンツを保持するcontenteditable divがdisplay: noneに設定されないようにすることで、これに対するCSSソリューションを見つけました。これにより、Redactorが無限ループに入るのを防ぐことができます。 。 このCSSをCPに追加します。

.redactor-source-view [contenteditable="true"] {
    display: block !important;
    height:0 !important;
    width:0 !important;
    padding:0 !important;
    overflow: hidden !important;
}

Macの最新のChromeとFirefox、およびPCのChromeでテストします。

コントロールパネルにCSSを追加するためのこの便利なプラグインでテストできます: https ://github.com/doublesecretagency/craft-cpcss

@croxton修正してくれてありがとう! 私はまだ再現できないので、それに頼るつもりです:)

このページは役に立ちましたか?
0 / 5 - 0 評価