What's a better way to ignore IE6 than using <![if !IE 6]>?
I’ve got a load of javascript which should only be run if the browser is not using IE6. Using conditional comments, I can achieve exactly this but it makes the html invalid according to w3c. Can someone suggest a better way which validates?
Observing members:
0
Composing members:
0
Answers
Well if it’s JS isn’t there a way to get the browser through using JS? This long and laborious script does allow you to get browser info: http://www.quirksmode.org/js/detect.html but I’m sure a quick google will give more information :)
@chaosrob, IE7 isn’t the problem with this one.. It’s just IE6 causing the headaches this time!
@Skyrail, I’ll give that a try.. I was trying to avoid needing a bulky script to check it but I guess that’s the only way forward.
Cheers for the help guys.
It’s okay damien, I think seeing as you’re only checking for one browser it doesn’t need to be anywhere near as bulky :) hope you get something sorted.
@damien Its designed to address problems in IE6, the name notwithstanding.
You can use this:
<!−−[if !IE 6]−−>
<script type=“text/javascript” src=“your-script.js”></script>
<!−−<![endif]>−−>
I had to convert the dashes to ”−” entities otherwise it would conver to a whisper thanks to Fluther’s markup… you should obviously use normal dashes.
Think of this as a “valid HTML” conditional comment. It works exactly as a conditional comment, but won’t break validation. There’s more on that on the MSDN documentation: About conditional comments… just check the “community content” below the article… the third or fourth comment details another way of using HTML-valid conditional comments.
Of course, there are other ways of doing this, such as with PHP and the browser agent HTTP response.
Answer this question 