5

このサイトによるとexternalcss3 styleSheet オブジェクトの CSS Rule オブジェクトを使用すると、スタイルシートの個々のルールにアクセスできます。

したがって、javascript コンソールを使用して、stackoverflow ページでこのコード (*) を実行しようとすると、このページhttp://cdn.sstatic.net/stackoverflow/all.css?vにいくつかの CSS ルールが記述されていることが予想されます。 =04e0337352b3 .

(*)

var mysheet=document.styleSheets[0]
var myrules=mysheet.cssRules? mysheet.cssRules: mysheet.rules
for (i=0; i<myrules.length; i++) {
     console.log(myrules[i].selectorText.toLowerCase());
}

実際、console.log の結果は、私が期待するものとは異なります。

object[type="application/x-shockwave-flash"], object[type="application/futuresplash"], object[data*=".swf"], object[src*=".swf"], embed[type="application/x-shockwave-flash"], embed[type="application/futuresplash"], embed[src*=".swf"]

私は何を逃したのですか?私の無知とあなたの時間で申し訳ありません。

4

1 に答える 1

5

同じドメインからのものである場合にのみ、CSS ファイル内のルールにアクセスできるようです。

このスレッドを読んでください: DOM でのクロスドメイン CSS ファイルのルールの読み取り

于 2012-05-17T18:50:57.640 に答える