0

この行:

if(Debug===true){console.log('No jquery detected on host site, loading own jquery');}

nokia Windows phone でスクリプトが壊れています。その変数を false に設定すると、すべてが正常に機能しますが、true に設定するとスクリプトが停止します。そのconsole.logの代わりにアラートを入れてみましたが、同じ停止動作です。

そのような行動の理由について何かを知っている、または疑って​​いる人はいますか?

編集

すべての返信に感謝します。実際には、console.log 行全体を取り出して、たとえば、空のままにするか、単純な var 宣言を配置すると、同じ停止動作が残ります。コンソール オブジェクトよりも if ステートメント

2回目の編集

あなたが言ったように、console.logはそれを壊します、私は隠されたものを持っていましたが、それを見つけて今は動作しているので、代わりにコンソールオブジェクトからのすべての障害の場合とは関係ありません。

4

5 に答える 5

4

consoleWindows Phone に存在するオブジェクトには依存しません。ステートメントが爆発しないように、ステートメントを防弾する必要があります。

if (Debug===true && typeof console !== 'undefined') {
    console.log('No jquery detected on host site, loading own jquery');
}
于 2012-10-09T13:59:26.033 に答える
2

Console.LogAlertWP7 ではサポートされていません。これは WP7 固有ではなく、Nokia 固有のものであると確信していますか? 私は試していませんが、このライブラリは役に立つかもしれません。

于 2012-10-09T13:57:47.047 に答える
1

うーん、これは奇妙です。if(Debug) または if(debug==true) の代わりに if(Debug===true) を使用している理由が完全にはわかりません。=== は boolean には不要です。問題が解決するかどうか試してみてください。

于 2012-10-09T13:56:19.390 に答える
1

console.log既存のものに頼らないでください。使用する場合は、最初に定義されていることを確認してください。

于 2012-10-09T13:57:19.217 に答える
1

古いバージョンの Internet Explorer はconsoleデフォルトで定義されていないと思います。consoleそうすることで が定義されているかどうかを確認できます。

if(Debug===true){
    if(!!console){
        console.log('No jquery detected on host site, loading own jquery');
    } else {
        window.console = { log: function(m){ alert(m); } } //Define console to prevent future errors.
        alert('No jquery detected on host site, loading own jquery');
    }
}
于 2012-10-09T13:57:28.553 に答える