1

私のphone-gapindex.htmljavascriptの部分では、window.refreshがIOSに使用され、this.refreshがandroidに使用されます。両方に同じindex.htmlを使用したいと思います。(navigator.userAgent.toLowerCase()。match()を使用すると、IOSとandroidを区別できますが、この条件を毎回適用したくありません。またはこれを使用します。この条件をグローバルに適用できますか?変数に値を割り当てます。つまり、Androidの場合は「this」、IOSの場合は「window」を使用し、必要に応じてその変数を使用します。この種のことは可能ですか、それとも複数のif-elseステートメントを回避できるようにするための回避策です。

どんな提案でも大歓迎です。前もって感謝します。

4

2 に答える 2

0

jsalonenの回答を拡張する

<script>
function browserRefresh()
{
   if(this.refresh === undefined) {
        window.refresh();
    } else {
        this.refresh();
    } 
}
</script>

リフレッシュしたいときはいつでも電話してください

browserRefresh();
于 2012-09-27T10:06:41.137 に答える
0

存在するかどうかを試しthis.refreshて呼び出すことができます。未定義の場合は、にフォールバックできますwindow.refresh。コード例:

if(this.refresh === undefined) {
    window.refresh();
} else {
    this.refresh();
}

どちらの方法が最も理にかなっているのかはわかりませんが、概念を理解していただければ幸いです。何かがundefinedである場合、それを呼び出すことはできず、何か他の方法を理解する必要があります。

于 2012-09-27T10:02:34.867 に答える