• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Über Ajax geladener Content lässt dragging nicht zu

T!P-TOP

Mitglied
Hallo

Habe mir das jQuery-UI-Paket (jQuery UI - Home) gedownloadet und wollte da gleich mal eine Box Dragable machen. Das Funktioniert allerdings nicht bei mit Ajax geladenen Content.

So Funktionierts:
HTML:
<html>
    <head>        
        <script type="text/javascript" src="jquery/dev/jquery-1.6.2.js"></script>
        <script type="text/javascript" src="jquery/dev/ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="jquery/dev/ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="jquery/dev/ui/jquery.ui.mouse.js"></script>
        <script type="text/javascript" src="jquery/dev/ui/jquery.ui.draggable.js"></script>

        <script type="text/javascript">
        $(document).ready(function()
        {
            $(function() 
            {
                $( "#draggable" ).draggable({ handle: "p.ui-widget-header" });
                $( "div, p" ).disableSelection();
            });
        });    
        </script>        
    </head>
    <body>
        <div id="draggable" class="ui-widget-content window">
            <p class="ui-widget-header">Content</p>
        </div>
    </body>
</html>

So nicht:
HTML:
<html>
    <head>        
        <script type="text/javascript" src="jquery/dev/jquery-1.6.2.js"></script>
        <script type="text/javascript" src="jquery/dev/ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="jquery/dev/ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="jquery/dev/ui/jquery.ui.mouse.js"></script>
        <script type="text/javascript" src="jquery/dev/ui/jquery.ui.draggable.js"></script>

        <script type="text/javascript">
        $(document).ready(function()
        {
            $(function() 
            {
                $( "#draggable" ).draggable({ handle: "p.ui-widget-header" });
                $( "div, p" ).disableSelection();
            });
        });    
        </script>        
    </head>
    <body>
         <!-- Den Content per Ajax reinladen -->
    </body>
</html>

Könnt Ihr mir vielleicht bitte sagen woran das liegt?

Grüße
Nico
 
Wenn Du Inhalte ueber AJAX laedst, sind diese noch nicht bekannt, wenn Du draggable() aufrufst; mach dies erst wenn Die Inhalte auf der Seite eingefuegt sind. Schau Dir auch mal die jQuery Funktionen live() und delegate() an, damit umgehst Du dieses Problem.
 
Zurück
Oben