Chrome中的AJAX期货拖放功能可能存在错误:
<head runat="server">
<title></title>
<script type="text/javascript">
function pageLoad() {
var source1 = new Custom.UI.ColorDragSourceBehavior($get("1"), "1");
source1.initialize();
var source2 = new Custom.UI.ColorDragSourceBehavior($get("2"), "2");
source2.initialize();
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div style="width:200%;">
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Scripts>
<asp:ScriptReference Name="PreviewScript.js" Assembly="Microsoft.Web.Preview" />
<asp:ScriptReference Name="PreviewDragDrop.js" Assembly="Microsoft.Web.Preview" />
<asp:ScriptReference Path="~/Scripts/ColorDragDrop.js" />
</Scripts>
</asp:ScriptManager>
<div id="1" style="float:left; width:30px; height:30px; background-color:Blue;">Left</div>
<div id="2" style="float:right;width:30px; height:30px; background-color:Blue;">Right</div>
</div>
</form>
</body>
</html>
ColorDragDrop.js可用here:
向右滚动并单击右侧分割,窗口自动向左滚动。
网上有几个提到这个,但没有解决方案,所以我想我会问这里。我正处于紧迫的截止日期之前,宁愿不必使用jQuery或类似方法重新实现拖放操作,所以任何帮助都会感激不尽。
答案 0 :(得分:0)
我在这里找到了3行黑客:
http://www.targetprocess.com/agileproductblog/2009/03/aspnet-20-ajax-safari-and-scroll-offset.html
if (Sys.Browser.agent === Sys.Browser.Safari) {
Sys.Preview.UI.DragDropManager._getInstance().getScrollOffset =
Sys.Preview.UI.IEDragDropManager.prototype.getScrollOffset
Sys.Preview.UI.DragDropManager._getInstance()._autoScroll = function() { }
}
适用于safari和chrome。