I've experimented with this bug a lot, and the best temporary solution is the one proposed by
kshakir (second post in this thread). Simply create a single JS file with his code and reference it in your site. To work properly, this script should be loaded before any AJAX control scripts. For my applications, I simply reference it as
the first script in the ScriptManager, like so:
Microsoft and the AjaxControlToolkit project managers tell me they want to fix this bug in the toolkit, so eventually this hack will (hopefully) no longer be necessary. But
in the meantime, this solution solves the problem with AjaxControlToolkit scripts not being loaded properly during partial updates.
My Signature: Mark a post as answered if it helped you, or don't, it makes no difference to me. Just PLEASE try not to use the word "random" when describing your problem.
danludwig
Contributor
3020 Points
601 Posts
Re: Compatibility patch for WebKit (Safari 3) 3.5.21022.8 MicrosoftAjax.debug.en-US.js
Jan 28, 2009 03:50 PM|LINK
I've experimented with this bug a lot, and the best temporary solution is the one proposed by kshakir (second post in this thread). Simply create a single JS file with his code and reference it in your site. To work properly, this script should be loaded before any AJAX control scripts. For my applications, I simply reference it as the first script in the ScriptManager, like so:
<asp:ScriptManager ID="ScriptManager1" runat="server"><Scripts>
<asp:ScriptReference Path="~/Scripts/Safari3AjaxHack.js" />
</Scripts>
</asp:ScriptManager>
The file can exist in any folder in your site, but as kshakir says, it should contain this code:
Sys.Browser.WebKit = {}; //Safari 3 is considered WebKitif( navigator.userAgent.indexOf( 'WebKit/' ) > -1 )
{
Sys.Browser.agent = Sys.Browser.WebKit;
Sys.Browser.version = parseFloat( navigator.userAgent.match(/WebKit\/(\d+(\.\d+)?)/)[1]);
Sys.Browser.name = 'WebKit';
}
Microsoft and the AjaxControlToolkit project managers tell me they want to fix this bug in the toolkit, so eventually this hack will (hopefully) no longer be necessary. But in the meantime, this solution solves the problem with AjaxControlToolkit scripts not being loaded properly during partial updates.