More experiments
By Ola P. Kleivenolak. Wednesday, November 10, 2010 1:34:05 PM
With a small experimental update to the browser.js for Opera 11 we are taking it a bit further, disabling support for another two things that causes compatibility issues in Opera from time to time.
Update2: new file released 2010-11-16.
PATCH-328 is also now disabled, so CKEditor should be back working. Overall this was a very successful experiment, so there may be more of similar nature in the future. We will not be able to remove HTMLElement.all for now, but the goal is still to remove it at some point in the future.
PATCH-313 (disables attachEvent/detachEvent) and PATCH-331 (disables Element.removeNode) are still active, as we have not seen any feedback that they break anything so far.
PATCH-329 caused some breakage as you found and Hallvord explained below. PATCH-329 has therefore been changed to only apply on shimano.com for now.
PATCH-331 removes support for Element.removeNode. Yet another IE+Opera thing. Also it works in a slightly unintuitive way and in Opera it has caused clashes with the flowjs library.
Some sites fixed by this:
Shimano (main menu)
Southpark Studios (overlapping episode descriptions)
Can you find any more that break?










1 2 Next »
ouzowtfouzoWTF # Wednesday, November 10, 2010 2:05:49 PM
MyOpera team, please fix this!fearphage # Wednesday, November 10, 2010 3:37:48 PM
d4rkn1ght # Wednesday, November 10, 2010 5:42:48 PM
Alexsalexs # Wednesday, November 10, 2010 9:06:35 PM
Bug: DSK-318563
No problem when disable Browser JavaScript.
MyOpera team, please fix this!fearphage # Wednesday, November 10, 2010 10:24:33 PM
KujaIXKuja-IX # Thursday, November 11, 2010 12:48:05 AM
It was fixed in august http://my.opera.com/sitepatching/blog/split-file-for-10-70-and-ebay-tvguide-patches (PATCH-270).
Hallvord R. M. Steenhallvors # Thursday, November 11, 2010 4:24:14 AM
Originally posted by alexs:
Wow, thanks - you found a problem pretty quickly!
I guess we're running into a limitation of our site patching here. With a custom getter, we can make someNode.document be the undefined value, but we can not remove it completely so that there is no 'document' property appearing on the node. Hence, when this inline event handler (with the node in scope) looks up 'document' it will find the document property on the node, whose value is undefined because of our custom getter..
When we do a core fix this will not be an issue - then someNode.document will truly not exist. Meanwhile, it seems we can not use browser.js for preliminary compat research for this issue after all. (If we had a simple property set on Node.prototype.document we could have just deleted it, but this is probably a getter under the hood, and dontDelete on each individual node, so AFAIK there really isn't any other way to do what we tried to do here..)
Not the end of the world, just means that we need to ship a new browser.js without the .document patch and you'll get to test the impact at a later date when the core fix lands instead of right now.
Hallvord R. M. Steenhallvors # Thursday, November 11, 2010 5:06:28 AM
Galileo # Thursday, November 11, 2010 10:31:59 AM
Event thread: change
Uncaught exception: TypeError: Cannot convert 'document' to object
Error thrown at line 1, column 0 in <anonymous function>(event):
changeDynaList( 'catid', sectioncategories, document.adminForm.sectionid.options[document.adminForm.sectionid.selectedIndex].value, 0, 0);
The problem appears in joomla admin interface, article manager. Create a new article, you select a section but then you can't select a category, the box doesn't show any.
Ola P. Kleivenolak # Thursday, November 11, 2010 12:15:00 PM
Hallvord R. M. Steenhallvors # Thursday, November 11, 2010 12:22:27 PM
Hallvord R. M. Steenhallvors # Thursday, November 11, 2010 12:23:52 PM
Alexsalexs # Thursday, November 11, 2010 12:27:15 PM
MyOpera team, please fix this!fearphage # Thursday, November 11, 2010 4:57:02 PM
Ola P. Kleivenolak # Thursday, November 11, 2010 7:27:58 PM
Node.document causes trouble for some jQuery extensions. In some cases they loop over all element properties and does particular things if it finds "document". In these cases IE gets different code paths so the problem is avoided.
On southparkstudios flow.js defines its own removeNode that is slightly different from IE/Opera's, but only used if the browser has none. But here too IE gets a different code path so the issue is avoided.
So often it is a case of IE being singled out in the code, but where Opera is led down the same path due to historical compat attempts from the time when IE was fully dominant.
Galileo # Thursday, November 11, 2010 8:57:35 PM
appears here in my.opera when you try to delete an inbox message.
Updated to the new update browserjs and everything is fine.
Hallvord R. M. Steenhallvors # Friday, November 12, 2010 12:07:47 AM
Thanks everyone, keep testing
Now off to ponder if we can still remove element.all without making Opera incompatible with every legacy install of (F)CKEditor..doesn't look good..
Patkos Csabapatkoscsaba # Friday, November 12, 2010 9:54:04 AM
Opera has modified the JavaScript on mail.google.com (Avoid Flash content on mail.google.com due to crasher). See browser.js for details
https://mail.google.com/mail/?ui=2&view=js&name=main,tlist&ver=2XB5n9DbH1E.en.&am=!dsYgKrSqQz-xhZxijtQ2BPpvY6pHEbT1HlIFnvhlJBPwLM0Vi0wp6w&fri 16 Uncaught exception: TypeError: Cannot convert undefined or null to Object
Ola P. Kleivenolak # Friday, November 12, 2010 11:19:26 AM
Galileo # Friday, November 12, 2010 12:03:52 PM
MyOpera team, please fix this!fearphage # Friday, November 12, 2010 7:05:11 PM
Anonymous # Friday, November 12, 2010 7:40:10 PM
Kyle Bakerkyleabaker # Friday, November 12, 2010 7:46:32 PM
Originally posted by fearphage:
Is this userjs intended to fix the current gmail loading issue? If so, it doesn't seem to be working for me.
MyOpera team, please fix this!fearphage # Friday, November 12, 2010 7:49:41 PM
Kyle Bakerkyleabaker # Friday, November 12, 2010 7:54:13 PM
Opera/9.80 (X11; Linux x86_64; U; Ubuntu/10.10 (maverick); en) Presto/2.7.39 Version/11.00
MyOpera team, please fix this!fearphage # Friday, November 12, 2010 8:47:07 PM
idomagic # Friday, November 12, 2010 10:57:26 PM
Originally posted by fearphage:
Userjs on https is disabled by default, I'm guessing that's the problem.
The script is working fine for me.
To enable userjs on https go to opera:config and search for "User JavaScript on HTTPS"
Mimi's Mum (MM)mimi_s_mum # Saturday, November 13, 2010 12:03:39 AM
11 build 10.60 on XPsp3
PengePenge4 # Saturday, November 13, 2010 12:10:24 AM
Originally posted by olak:
The new browser.js has broken the Gmail in the latest 11 snapshot (b1060).
Mimi's Mum (MM)mimi_s_mum # Saturday, November 13, 2010 12:20:44 AM
Originally posted by Penge4:
No. The existing issue in 11 series was exposed by the latest change in Gmail by Google. Nothing to do with the browser.js. I've tried build 1029 (alpha) with an older browser.js released 29 October and Gmail is still broken.And the issue can be fixed by fearphage's userJS.
FataL # Saturday, November 13, 2010 5:53:05 AM
Galileo # Saturday, November 13, 2010 9:52:15 AM
pasqal # Saturday, November 13, 2010 1:49:34 PM
Originally posted by kyleabaker:
I have also had small problems with using this browserjs, but after some tries everything's working fine.
This script also works with Opera 10.70 build 9071.
Kyle Bakerkyleabaker # Saturday, November 13, 2010 7:41:13 PM
Originally posted by idomagic:
Nope, thats the first thing I enable.
Anonymous # Saturday, November 13, 2010 7:43:51 PM
Laurentlsaplai # Saturday, November 13, 2010 8:20:06 PM
I use Opera 11 latest built 10.60 on Ubuntu 10.10.
I think I have properly enables the user js (pointed to my folder, created a file called gmail and copied the content of the script in that file). I also enables https for user js.
Also, we have the same issue with 10.63 on WinXP...
Mimi's Mum (MM)mimi_s_mum # Saturday, November 13, 2010 8:35:21 PM
Originally posted by anonymous:
Maybe you'll have to login using another browser (Such as your default 10.63), switch to the standard view, log out and then try again?Originally posted by lsaplai:
Strange. My 10.63 is effortlessly loading the same gmail account 11/1060 could not load without fearphage's UserJS. Maybe you have another issue on your side?Anonymous # Sunday, November 14, 2010 2:02:16 AM
Zalex ;-) Zalex108 # Sunday, November 14, 2010 1:20:48 PM
Originally posted by kyleabaker:
Works fine for me! (Remember to enable JS in Https) 10.70 Last Build!mrd # Sunday, November 14, 2010 9:28:32 PM
Put in that little UserJS and enabled it on HTTPS and it still appears to be hanging.
I assume this is something that Opera is talking to Google about, prefer with a big stick?
Mimi's Mum (MM)mimi_s_mum # Sunday, November 14, 2010 9:42:00 PM
Originally posted by mrd:
Apparently it's a bug of some sort in Opera (presumably all 11 builds).Originally posted by olak:
Gmail should load fine on 10.63
Inf4mous # Sunday, November 14, 2010 9:50:33 PM
ncc50446 # Sunday, November 14, 2010 9:55:11 PM
Keep up the good work Opera Teams!
Balázs Bodóblasiotm # Sunday, November 14, 2010 9:59:15 PM
Originally posted by fearphage:
how to use it? sorr for the silly question, but I created a text doc with the text you gave, renamed .txt to .js, enabled userjs, gave the folder for it and Gmail doesnt work.
O11 build 1060, Windows 7...
MyOpera team, please fix this!fearphage # Sunday, November 14, 2010 10:19:35 PM
I breifly was getting an error that looked like a regression about "-->" appearing in javascript.
Originally posted by blasiotm:
That all sounds right. have you tried enabling all of these:EDIT: Even after restarting Opera, I still don't get the "Userjs on HTTPS" popup.
Galileo # Monday, November 15, 2010 9:17:12 AM
[Error: 20007]
and this js in error console
In the previews snapshot it was working ok. Is this related to the problem that Opera has with gmail?
idomagic # Monday, November 15, 2010 9:31:45 AM
Originally posted by fearphage:
Have you right-clicked on the site and checked the "Path to user JavaScript" under "Edit site preferences"/"Scripting"?
I have now tried the workaround on both 10.70 b9071 on winxp & ubuntu and latest o11 snapshot on w7, and it was working on all..
Ola P. Kleivenolak # Monday, November 15, 2010 9:47:19 AM
Hallvord R. M. Steenhallvors # Monday, November 15, 2010 11:41:52 AM
Galileo # Monday, November 15, 2010 11:44:32 AM
// @include *://google.*
I download snapshot 1055, with the latest browserjs "Current browser.js status: enabled.
Target version and time stamp of the active browser.js file is Opera Desktop 11.00 core 2.7.39, November 11, 2010 ." and it works ok. No error messages inside analytics.
The userjs of fearphage works in gmail.