2

私は自分のウェブサイトをうまく機能させるように努めてきました。これを実現する1つの方法は、LAB.jsスクリプトのようなローダーをHTML内にインラインで含め、次の行でスクリプトを並行してロードすることです。

したがって、一連のコードを含むLAB.jsライブラリ内には、この特定のコード行があります{var c=/^\w+\:\/\//,d;if(typeof a!=q)。そのコードをHTMLのscriptタグ内にインラインで配置すると、mozillaとchromeの両方でうまく機能しますが、「microsoft」と呼ばれるこの優れたソフトウェア会社によって構築されたInternetExplorer8と呼ばれるこのブラウザでは失敗します。

ある部分を見てください"\/\//"。これらの最後の2文字「//」は、Mozillaとchromeの両方で問題なく解析されます。ただし、IEでは、最後の2文字はコメント演算子として解析されるため、これらの最後の2行以降のコードはコメントとしてレンダリングされます(役に立たない)。これは本当に信じられないほどです。IEでは、これら2つの文字の後の残りのコードは文字通り役に立たず、緑色になっています(コメントのように)誰かがこの問題が以前に起こっているのを見たことがありますか?plsは役立ちます。ありがとう。

Mozillaとchromeの場合:(最後の2文字) "//",d;if(typeof a!=q)

IEの場合://,d;if(typeof a!=q)

4

2 に答える 2

2

正規表現を次のように囲むことができます(?:...):

 c=/(?:^\w+\:\/\/)/,d;if(typeof a!=q)
于 2011-06-16T20:09:57.160 に答える
1

試してみたらどうですか

c = new RegExp("^\w+\:\/\/"),d;if(typeof a!=q)
于 2011-06-16T20:12:19.003 に答える