![]() |
IE11 browser detection and fixes
1 Attachment(s)
IE11 gets along pretty well with vB3, though file downloads get a bit wonky due to some changes in how IE is detected.
In includes/functions.php find: PHP Code:
PHP Code:
PHP Code:
PHP Code:
|
You do that then...
|
But only if it's okay with you. :D
|
Only the mod author is allowed 1 reserved post directly below their modification post. Reserved posts aren't permitted elsewhere on the site.
|
Quote:
NOW I understand. |
TAg, or install it, if you want to keep dibs on it :)
|
Made a small change to fix a IE10 detection issue.
|
Thanks, Zachery! Installed. Do you know whether this will be included into vB3.8.8 before release? Just so I know whether I'll have to remember to redo it after an eventual upgrade.
|
I don't think so, I haven't asked about it. But the fix is fairly trivial at least.
|
A bug for IE11 detection is marked as resolved in JIRA-
http://tracker.vbulletin.com/browse/VBIII-12932 Looks like it would fix this issue. |
What about the browser detection in the javascript files? Do they need a fix as well?
|
Nearly positive all of our detection is done with is_browser, I haven't detected anything working/not working based on js detection.
|
Anyone fixed this on 3.7?
|
Quote:
(Yes, I know it not downloadable yet, but it will be when I get time to make it available). |
Quote:
Thanks! |
Smileys don't seem to work in IE11/vB3.8 by clicking them in WYSIWYG mode. Works fine in compatibility mode. Any fix for this?
Edit: Enabling the "Send Internet Explorer 7 Compatibility Header" option seems to fix it, however if I do that mods like the vbshop stop working properly (clicking the tabs on the main page of the shop does nothing). |
It appears that YUI will also need to be updated to handle the issues with the editor. Though, I don't know how reasonable that will be. I suspect we can just append similar code to the YUI file for browser matching. But I'm not overly familiar with js.
You'd want to look at /clientscript/yui/yahoo-dom-event.js and find: else{A=B.match(/MSIE\s([^;]*)/); Then you'd have to append something to match Trident, instead of IE, and check for rv: instead of the MSIE version string. I'm not a pro at regex so I don't quiet understand how that regex works or what its trying to match. I don't think any version of YUI supports IE11 though, since it was discontinued almost 3 years ago now. Before IE was even a thing. You'd need to add something like else{A=B.match(/Trident\s([^;]*)/); basically, you need to patch YUI with IE11 detection. I'm not sure if the above code is correct, you'll have to dig around and check out how the user agent is parsed, and then figure out how to add the additional parsing. |
Thanks Zachery. I'll have a look at it tomorrow. :)
|
This regex will match Trident OR MSIE....
Code:
[Trident|MSIE]+\s([^;]*) Code:
else{A=B.match(/[Trident|MSIE]+\s([^;]*)/); |
<font face="Courier">(Trident|MSIE)</font> would match specifically one of those two words, but I don' know how that affects the JS.
|
Quote:
|
Did anyone try?
|
Quote:
Quote:
|
YUI 3, is not YUI 2, its not a drop in replacement. Moving to YUI 3 is about the same as moving to Jquery, or another similar js lib.
So yes, to get IE11 support in vBulletin fully, you'd need to update yui to support something it wasn't originally intended to. |
Quote:
The | has no meaning between []. The chars/letters are alternatives, so you could also write: Code:
(T|r|i|d|e|n|t|\||M|S|I|E){1,} Code:
else{a=c.match(/MSIE\s([^;]*)/);if(a&&a[1]){g.ie=e(a[1]);} Code:
else{a=c.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/);if(a&&(a[1]||a[2])){g.ie=e(a[1]||a[2]);} untested, hope it works ;) |
What YUI version file do you use, Boothby? I don't have that line in my /clientscript/yui/yahoo-dom-event.js.
|
I downloaded the latest version from yahoo, 2.9.0, and it seems identical to the latest stable and beta vBulletin builds. In an older build on my local install I found also Zachery's code which was from 2.7.0.
Here it is: Find: Code:
else{A=B.match(/MSIE\s([^;]*)/);if(A&&A[1]){C.ie=parseFloat(A[1]);} Code:
else{A=B.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/);if(A&&(A[1]||A[2])){C.ie=parseFloat(A[1]||A[2]);} |
digitalpoint did some testing and he said the YUI 2.9 seemed to work, but again, its not supported by default.
|
Thanks guys, appreciated! Shawn's word is good enough for me :-)
|
YUI 2.9 is in the current download packages of vB 3.8.7 and 3.8.8.
Code:
/* |
Up to now, l was using offsite, So never really cared :)
|
I'm confused as my latest stock install of 3.8.7 pulls YUI 2.9 directly from yahoo. Are you guys pulling the 2.9, modding it and then pointing your board to your own modded version?
|
I plan on downloading the latest vB3.8 version, get the yui files provided in the package, modify them and use those on my server.
|
Quote:
|
I have vB3.8.4 version and 2,7 YUI version. I tryed to apply mod to *.js file but smiles not works in IE11 :-(((((((
|
These are my problems with IE11:
- If I put this correct code into headinclude, smiles not works and lightbox for attachment files works very very well Code:
<meta http-equiv="X-UA-Compatible" content="IE=11" /> PLEASE HELP ME !!! |
Try IE=10
|
I've already tried this mod. Nothing !
Probably with IE10 installed works fine, but I wanted to try to fix problems in IE11, for next years... I hope to receive help and solutions from some coder or developers :-) |
<meta http-equiv="X-UA-Compatible" content="IE=10" /> That is what I meant/
|
Thank you Zachery, I understood your suggestion. I've already tried that code but without change :-(
|
All times are GMT. The time now is 12:43 PM. |
Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|