16

Google の +1 ボタンを調べてみたところ、Google が提供するコードに奇妙な点が 2 つ見つかりました。

<script type="text/javascript" src="https://apis.google.com/js/plusone.js">
  {lang: 'en-GB'}
</script>

<g:plusone size="tall" href="http://www.google.com"></g:plusone>

そこで、2 つの質問があります。
最初scriptに、Google はどのようにしてタグ       間のテキストを使用できるのでしょうか?
2 番目:  構文<g:plusone ...HTML は有効ですか? これは何と呼ばれていますか?

4

3 に答える 3

12

Google はスクリプト タグ間のテキストをどのように使用できますか?

<script>要素は DOM で完全に表示されます。

<script type="text/javascript">//FIRST SCRIPT BLOCK</script>

<script type="text/javascript">
    var s= document.getElementsByTagName('script')[0];
    alert(s.textContent); // "//FIRST SCRIPT BLOCK"
</script>

Google の巧妙な手口は<script>、外部の を持つにコンテンツを配置することsrcです。この場合、srcはブロック内のコンテンツをオーバーライドし、代わりに外部スクリプトを実行しますが、<script>要素のコンテンツは何もしなくても DOM から読み取ることができます。

構文<g:plusone... HTML は有効ですか? これは何と呼ばれていますか?

いいえ。彼らが HTML+plusone 用に独自の doctype を作成した場合、それは有効である可能性がありますが HTML の有効性を満たしていません。xmlns:gそれも。

于 2011-07-15T21:30:53.707 に答える
2

構文<g:plusone...HTMLは有効ですか?

いいえ

これは何と呼ばれていますか?

無効な疑似名前空間

于 2011-07-15T21:20:08.173 に答える