2014-11-22 18 views
0

Javascript確實不是我的專長,所以只是尋求一些幫助來解決這個問題。IF OR語句var = true,然後寫文檔

我需要一個平滑的滾動腳本針對IE瀏覽器&鉻。我知道現在做一個UserAgent檢查幾乎是徒勞的,我的需求不適合做瀏覽器功能檢測的模式。我也不能使用條件註釋來訪問IE gte 10,所以我仍然試圖做一些瀏覽器黑客。

我發現了browserhacks.com資源,它提供了用於定位特定版本或瀏覽器版本範圍的變量,以便我可以創建適用於這些瀏覽器的一攬子邏輯。

所以眼前的時候,我使用這些:

使用Chrome

var isChrome = !!window.chrome && !!window.chrome.webstore; 

對於IE

var isIE = document.all && window.XMLHttpRequest; 
var isIE = document.body.style.msTouchAction !== undefined; 

我假設我只是需要創建一個「IF 「或」聲明涵蓋所有這些,然後從事:

document.write('<script src="js/smooth-scrolling.js"><\/script>'); 

這是我有什麼:

<script type="text/javascript"> 
    var isChrome = !!window.chrome && !!window.chrome.webstore; 
    var isIE = document.all && window.XMLHttpRequest; 
    var isIE = document.body.style.msTouchAction !== undefined; 
    document.write('<script src="js/smooth-scrolling.js"><\/script>'); 
</script> 

這適用於應用的平滑滾動到IE &瀏覽器,但它也把它應用到Firefox,我不希望因爲火狐已經擁有非常流暢的原生滾動,而腳本實際上降低了Firefox的滾動性能。

然後我試圖(愚蠢的嘗試我敢肯定):

<script type="text/javascript"> 
    if (var isChrome = !!window.chrome && !!window.chrome.webstore) { 
     document.write('<script src="js/smooth-scrolling.js"><\/script>') 
    } 

    if (var isIE = document.all && window.XMLHttpRequest) { 
     document.write('<script src="js/smooth-scrolling.js"><\/script>') 
    } 

    if (var isIE = document.body.style.msTouchAction !== undefined) { 
     document.write('<script src="js/smooth-scrolling.js"><\/script>') 
    } 
</script> 

...那剛剛打破一切。只是試圖讓腳本參與而不會觸及每個瀏覽器。

+1

你在問我們如何編寫'if'語句。顯示沒有研究努力。 – meagar 2014-11-22 23:34:27

+0

那麼你有什麼嘗試? – hereandnow78 2014-11-22 23:34:44

+0

我想我剛剛得到了我的第一個負面反饋,因爲您認爲這太簡單了一個問題要問? – ornous 2014-11-22 23:41:05

回答

1

不要使用document.write();您必須創建一個新的腳本元素並將其添加到DOM。

var isChrome = !!window.chrome && !!window.chrome.webstore; 
if(isChrome){ 
    var s=document.createElement('script'); 
    s.src='source_to-Your_JS.js'; 
    document.head.appendChild(s); 
} 
+0

會給這個試試看,謝謝 – lsargent 2014-11-23 00:00:23

+0

這完全按照需要做了這個竅門,謝謝你提供一個直接的可操作的答案,而不會因爲不熟悉該語言而破壞我的同伴 – lsargent 2014-11-23 00:15:14