Ticket #8509 (closed bug: fixed)
jQuery-1.5.1 doesn't work in WebBrowser control
| Reported by: | fl.lllj@… | Owned by: | jaubourg |
|---|---|---|---|
| Priority: | low | Milestone: | 1.next |
| Component: | ajax | Version: | 1.5.1 |
| Keywords: | Cc: | ||
| Blocking: | Blocked by: |
Description
When loaded in WebBrowser control, happens an error
"line nnn, symbol 1, '1' is null or not an object" and jQuery doesn't works.
IE8 - line 6313,
IE7 - line 6314.
Affected jQuery version - 1.5.1,
unaffected versions - 1.5 and prior.
Web browser - WebBrowser ActiveX control (IE8, IE7),
but not IE8 or IE7 web browsers.
OS - Windows 7, WindowsXP SP3
Code to reproduce bug (C#):
using System.Windows.Forms;
class TestForm : Form
{
TestForm()
{
SuspendLayout();
WebBrowser _webBrowser = new WebBrowser { Dock = DockStyle.Fill };
Controls.Add(_webBrowser);
ResumeLayout(false);
_webBrowser.DocumentText = @"
<script type='text/javascript' src='http://code.jquery.com/jquery-1.5.1.js'></script>
";
}
[System.STAThread]
static void Main()
{
(new TestForm()).ShowDialog();
}
}
Change History
comment:2 Changed 2 years ago by rwaldron
- Owner set to jaubourg
- Priority changed from undecided to low
- Status changed from new to assigned
- Component changed from unfiled to ajax
In an effort to try and understand this report... looking at Line 6313 & 6314, the way IE reports bugs, I started looking down inside the jQuery.extend({}) and there exists at line 6348:
isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),
I'm wondering if ajaxLocParts[ 1 ] does not actually exist to test in the WebBrowser control?
This is conjecture...
comment:3 Changed 2 years ago by jaubourg
- Status changed from assigned to closed
- Resolution set to fixed
Fixes #8509. Makes URL regexp less overzealous and ensures it recognizes URL schemes which do not contain a conformant hierarchical structure ( as per section 2.1.2 of http://www.ietf.org/rfc/rfc2718.txt ). Also adds about: and adobe air's app: and app-storage: to the list of local protocols and provides a failover in case document.location is illformed. Unit test added.
Changeset: 714ae379db9dcb704c04080196a05d13a028f7a4
comment:4 Changed 2 years ago by ian@…
This changeset (714ae379db9dcb704c04080196a05d13a028f7a4) worked for me in Adobe Air. Thanks!
Please follow the bug reporting guidlines and use jsFiddle when providing test cases and demonstrations instead of pasting the code in the ticket.

I have a C++/Win32 exe with an embedded browser and it seems to load jQuery 1.5.1 with no problems/errors on Windows 7 and IE8. I'm not sure what the difference is versus your C#/.NET version, I do not have the ability to compile your C# example. Is it possible it is dependent on the version of .NET?
The error and line number doesn't seem to make sense, it's the jQuery.extend call that is closed on line 6815.