2014-11-22 16 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