問題タブ [google-code-prettify]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
108 参照

html - Google Prettify がコードをカット - 修正が必要

現在、ブラウザがそれをタグとして扱うため、 for ループの < で切り取られているコードがあります。これを修正する人はいますか?:

レンダリングされたページのソースでは、次のようになるまですべてが正しく表示されます。

ありがとう!

0 投票する
1 に答える
1466 参照

javascript - HTMLエスケープシーケンスのGoogleprettify処理を修正する方法

google-code-prettifyは、エスケープされたシーケンスではなく、エスケープ文字自体を「プリティフィケーション」することにより、コードブロック内のHTMLエスケープを処理します。例:

元のHTML<code class="prettyprint lang-sql"> ... &gt; ... </code>は次のようになります。

明らかに間違ったレンダリングで。<code>信頼できるソースからのものではなく、XSSベクトルとして使用できるため、エスケープされていないHTMLを内部に返すことはできません。

私の質問は、google-pretty-printに正しいことを強制し、コンテンツを<code>生のテキストではなくHTML(エスケープ)と見なす方法があるかどうかです。

0 投票する
2 に答える
5536 参照

javascript - ページの読み込み時に prettyPrint() が呼び出されない

Blogger でコードをきれいにしようとしています。Google JS および CSS ファイルをテンプレートにリンクしました。問題は、ページの読み込み時にコードをきれいにしたいのでprettyPrint();、テンプレートのページ読み込みイベントに追加することです。

<body onload="prettyPrint();">

このコードは実行されません。ただし、コンソールで prettyPrint() を手動で入力すると、コードが正しく整形されます。ブロガー テンプレートは JS 関数の手動呼び出しをブロックしますか?

編集コードの整形が必要なすべての投稿で関数を手動で呼び出すことで機能させます(以下を参照)。それでも、なぜテンプレートでそれができないのか知りたいです。

EDIT 2 READMEprettyPrint()には、ハンドラーとして直接使用するのではなく、代わりにクロージャーでラップする必要があると書かれています。そのため、README の例と同様に、このコードを追加しました<head>が、役に立ちませんでした。

また

編集 3私のテンプレート HTML は、上記で説明したように、prettify ライブラリが追加されたデフォルトの Dynamics View (クラシック) テンプレートです。

EDIT 4問題を示すリンクは次のとおりです: http://testprettyprint.blogspot.com/2013/02/blog-post.html -- コード ブロックは自動的に整形されませんが、Chrome のコンソールを開いて prettyPrint() と入力するとコードが正しく強調表示されます。

EDIT 5ブロガーの問題ではなく私の問題だと思う理由は、この男がまだ同じ手法を使用してコードを整形しているためです

編集 6 Jeffery To が彼の回答で指摘したように、Dynamics View は AJAX を使用してブログ コンテンツを読み込むため、ドキュメントの読み込みに関する JS 呼び出しは、実際のコンテンツが読み込まれる前に実行されます。したがって、ドキュメントではなく、実際のブログ コンテンツに対して実行される JavaScript はすべて無効です。したがって、Dynamics View イベントにフックする方法が問題になると思いますがajax:complete、そのようなものがあるとは思えません。返信してくれたみんなありがとう。これがバグとして数えられるかどうかはわかりませんが、blogger に問題を報告します。

結論Jeffery To の回答を読んでください。彼は、関数を呼び出すイベントを見つけました。

0 投票する
3 に答える
334 参照

javascript - Prettifyがロードされているかどうかを確認する方法

スクリプトが<pre class="prettyprint">存在する場合にのみロードします。Prettifyを開始するには、を使用する必要があることがわかりましたprettyPrint();

ただし、スクリプトをロードしないページでは、Javascriptエラーが発生します。Prettifyがロードされているかどうかをテストしてから実行する方法はありますか?それ以外は何もしませんか?

0 投票する
1 に答える
2581 参照

google-code-prettify - google-code-prettify xml インデント

生成された xml ドキュメントに改行を追加しました。

これは次のようになります。

これは google-code-prettify で可能ですか?それとも、xml を生成するコードで自分で行う必要がありますか?

前もって感謝します

0 投票する
1 に答える
4046 参照

javascript - ckeditor で html タグを表示する

以下のコンテンツをデフォルトとして ckeditor を開いています。

ただし、出力の HTML タグ コードが欠落しています。出力は以下 (下線) です。


prettify を使用して、Web ページのコンピューター プログラミング コードを自動フォーマットできます。

使い方?

以下の行を追加するだけです。

次に、コード行を下のタブに配置します。

...

また、

完全なコード ファイルをhttps://code.google.com/p/google-code-prettify/からサーバーにダウンロードし (prettify の詳細も参照できます)、上記のスクリプト タグ行を次のように変更します。


期待される出力: 期待される出力 助けてください。

0 投票する
1 に答える
1395 参照

css - コードの google-code-prettify 境界線を削除

使用中にコードの境界線を削除したいgoogle-code-prettify。以下を試しましたが、結果が得られませんでした。

preまた、すべてのタグの境界線を削除しようとしましたが、同じ結果はありません。