JQuery UI Draggable не работает с моим приложением

0

Я пытаюсь сделать класс blankWindow перетаскиваемым, а дескриптор должен быть #blankWindowHandle. Я загрузил пользовательскую загрузку пользовательского интерфейса JQuery и ничего не работает. он по-прежнему просто выделяет текст в верхней части элемента управления:

<!DOCTYPE html>
<html>
    <head>
        <title>ModularWiz_B</title>
        <link rel="stylesheet" href="style.css" type="text/css" />
        <link rel="apple-touch-icon-precomposed" href="images/icon.png">
        <meta name="apple-mobile-web-app-capable" content="yes">
        <meta name="mobile-web-app-capable" content="yes">
        <link rel="shortcut icon" href="images/icon.png">
        <link rel="apple-touch-startup-image" href="images/startup.png">
        <meta name="viewport" content="width=device-width, user-scalable=no">
        <script src="https://code.jquery.com/jquery-2.1.0.min.js"></script>
        <script src="jquery-ui-1.10.4.custom/js/jquery-ui-1.10.4.custom.min.js">    </script>
        <script>
            var online = navigator.onLine;
            $(document).ready(function() {
            if (online == false) {
            $('#wifiwarning').fadeToggle("fast");
        };
        });
    </script>
    <script>
        $( ".blankWindow" ).draggable({ handle: "#blankWindowHandle" });
        // getter
        var handle = $( ".blankWindow" ).draggable( "option", "handle" );
        // setter
        $( ".blankWindow" ).draggable( "option", "handle", "#blankWindowHandle" );
    </script>
</head>
<body>
    <div id="addButton">
        <img src="images/add.png" alt="Add" onClick="$('#appMkt').fadeToggle('fast');"/>
    </div>
    <appWindow id='appMkt'>
        <div class="close" onClick="$('#appMkt').fadeToggle('fast');"></div>
        ~APPS~<HR/>
        <div onClick="$('.blankWindow').fadeToggle('fast');$('#appMkt').fadeToggle('fast');"><img src="images/icon.png"> .blankWindow()</div><hr/>
        <div onClick="$('.info').fadeToggle('fast');$('#appMkt').fadeToggle('fast');"><img src="images/icon.png"> App Info</div>
    </appWindow>
    <appWindow class="blankWindow">
        <div class="appClose" onClick="$('.blankWindow').fadeToggle('fast');"></div>
        <center id="blankWindowHandle">
           ~Blank~<hr/>
        </center>
       This is a .blankWindow<br/><br/>
       We can use this to house the apis (apps).
    </appWindow>
    <appWindow class="info">
        <div class="close" onClick="$('.info').fadeToggle('fast');"></div>
        ~INFO~<HR/>
        <a rel="license" href="https://creativecommons.org/licenses/by-nd/4.0/"><img alt="Creative Commons License" style="border-width:0;width:88px;height:31px;" src="https://i.creativecommons.org/l/by-nd/4.0/88x31.png" /></a><br /><span xmlns:dct="http://purl.org/dc/terms/" href="http://purl.org/dc/dcmitype/InteractiveResource" property="dct:title" rel="dct:type">ModularWiz</span> is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nd/4.0/">Creative Commons Attribution-NoDerivatives 4.0 International License</a>.<hr/>
        Developed by:<br/> ... and ...<hr/>
    </appWindow>
    <div id="wifiwarning">
    <!-- NOTE: THIS DIV ALWAYS NEEDS TO BE THE VERY LAST THING ON THE PAGE INSIDE THE BODY TAGS -->
        <br />
        <br />
        You need to be connected to the internet to use this app.
        <br />
        Please try going to settings and toggling wifi on
        <br />
        <br />
    </div>
</body>

Теги:
user-interface

1 ответ

0
Лучший ответ

Ваш JS-код может выполняться до создания DOM. Попробуйте использовать $ (document).ready(function() {}); или его аббревиатура $ (function() {}); чтобы ваш JS запускался после создания DOM. Вы также можете разместить JS на нижней части тела, чтобы убедиться, что JS работает сразу после создания DOM.

ОБНОВЛЕНО: Как я и предложил, я поместил ваш JS в нижнюю часть тела, и он отлично работал

<!DOCTYPE html>
<html>
    <head>
        <title>ModularWiz_B</title>
        <link rel="stylesheet" href="style.css" type="text/css" />
        <link rel="apple-touch-icon-precomposed" href="images/icon.png">
        <meta name="apple-mobile-web-app-capable" content="yes">
        <meta name="mobile-web-app-capable" content="yes">
        <link rel="shortcut icon" href="images/icon.png">
        <link rel="apple-touch-startup-image" href="images/startup.png">
        <meta name="viewport" content="width=device-width, user-scalable=no">

</head>
<body>
<div id="addButton">
        <img src="images/add.png" alt="Add" onClick="$('#appMkt').fadeToggle('fast');"/>
    </div>
    <appWindow id='appMkt'>
        <div class="close" onClick="$('#appMkt').fadeToggle('fast');"></div>
        ~APPS~<HR/>
        <div onClick="$('.blankWindow').fadeToggle('fast');$('#appMkt').fadeToggle('fast');"><img src="images/icon.png"> .blankWindow()</div><hr/>
        <div onClick="$('.info').fadeToggle('fast');$('#appMkt').fadeToggle('fast');"><img src="images/icon.png"> App Info</div>
    </appWindow>
    <appWindow class="blankWindow ui-draggable">
        <div class="appClose" onClick="$('.blankWindow').fadeToggle('fast');"></div>
        <center id="blankWindowHandle">
           ~Blank~<hr/>
        </center>
       This is a .blankWindow<br/><br/>
       We can use this to house the apis (apps).
    </appWindow>
    <appWindow class="info">
        <div class="close" onClick="$('.info').fadeToggle('fast');"></div>
    ~INFO~<HR/>
        <a rel="license" href="https://creativecommons.org/licenses/by-nd/4.0/"><img alt="Creative Commons License" style="border-width:0;width:88px;height:31px;" src="https://i.creativecommons.org/l/by-nd/4.0/88x31.png" /></a><br /><span xmlns:dct="http://purl.org/dc/terms/" href="http://purl.org/dc/dcmitype/InteractiveResource" property="dct:title" rel="dct:type">ModularWiz</span> is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nd/4.0/">Creative Commons Attribution-NoDerivatives 4.0 International License</a>.<hr/>
    Developed by:<br/> ... and ...<hr/>
        </appWindow>
        <div id="wifiwarning">
    <!-- NOTE: THIS DIV ALWAYS NEEDS TO BE THE VERY LAST THING ON THE PAGE INSIDE THE BODY TAGS -->
        <br />
        <br />
        You need to be connected to the internet to use this app.
        <br />
        Please try going to settings and toggling wifi on
        <br />
        <br />
    </div>


    <script src="https://code.jquery.com/jquery-2.1.0.min.js"></script>
    <script src="jquery-ui-1.10.4.custom/js/jquery-ui-1.10.4.custom.min.js"></script>
    <script>
        var online = navigator.onLine;
        $(document).ready(function() {
        if (online == false) {
        $('#wifiwarning').fadeToggle("fast");
        };
        });
    </script>
    <script>
        $( ".blankWindow" ).draggable({ handle: "#blankWindowHandle" });
        // getter
        var handle = $( ".blankWindow" ).draggable( "option", "handle" );
        // setter
        $( ".blankWindow" ).draggable( "option", "handle", "#blankWindowHandle" );
    </script>
</body>
  • 0
    Я попробую это.
  • 0
    Это все еще не работает .. но спасибо за предложение. :)
Показать ещё 7 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню