Я обнаружил странную ошибку в одном из моих приложений при использовании Chrome. Приложение отображает изображения с картами изображений, которые запускают события JavaScript. Изображения / карты находятся на панелях обновления. Когда панель обновления обновляется, изображение изменяется, и если вы осматриваете элемент, карта изображения, кажется, изменилась, но Chrome все еще вызывает старую функцию javascript.
Я попытался собрать простой пример для демонстрации. Это довольно плохой пример, так как в любом другом браузере он вообще ничего не делает, но я думаю, что в Chrome проблема хорошо (надеюсь).
<form id="form1" runat="server">
<asp:ScriptManager ID="MyScriptManager" runat="server"></asp:ScriptManager>
<div>
<a href="#" onclick="__doPostBack('MyUpdatePanel', '');">reload</a>
<asp:UpdatePanel ID="MyUpdatePanel" runat="server">
<ContentTemplate>
<%=CreateClickable()%>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
public string CreateClickable()
{
if (IsPostBack)
return CreateClickable("red", "postback msg");
else
return CreateClickable("blue", "original msg");
}
private string CreateClickable(string color, string msg)
{
string html;
html = @"<map id=""myMap"" name=""myMap"">
<area shape=""rect"" coords=""0,0,100,100"" onclick=""alert('" + msg + @"');"">
</map>";
html += @"<img id=""myImg"" usemap=""myMap"" style=""height:100px; width:100px; background-color:" + color + @";"">";
return html;
}