Перетаскивание фьючерсов на AJAX, потенциальная ошибка с Chrome - PullRequest
0 голосов
/ 14 июля 2011

Возможная ошибка с функциональностью перетаскивания фьючерсов AJAX в Chrome:

<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 доступен здесь :

Прокрутите вправо и нажмите справаделение и окно автоматически прокручивается обратно влево.

В сети есть несколько упоминаний об этом, но нет решений, поэтому я решил спросить здесь.У меня сжатые сроки, и я бы предпочел не реализовывать перетаскивание с помощью jQuery или чего-либо подобного, поэтому любая помощь будет с благодарностью получена.

1 Ответ

0 голосов
/ 18 июля 2011

Я нашел 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() { }
}

работает для сафари и хрома.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...