2009-07-09 15 views
4

Ich verwende die jQuery UI-Komponenten, aber einige Probleme. Wenn ich etwas Einfaches wie $ ("# mydiv") versuche und mache. Draggable() bekomme ich eine Fehlermeldung "Microsoft JScript Laufzeitfehler: Objekt unterstützt diese Eigenschaft oder Methode nicht".jQuery UI nicht initialisiert

Die jQuery-Benutzeroberfläche scheint geladen zu sein, weil ich eine alert() in die darin enthaltene js-Datei (siehe Code) einfüge und die Warnung angezeigt wird. Ich bin wirklich darauf fest.

;jQuery.ui || (function($) { 

    var _remove = $.fn.remove, 
    isFF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9); 

    alert("jquery.ui.loading"); // 

    //Helper functions and ui object 
    $.ui = { 
     version: "1.7.2", 

Antwort

8

Verwenden Sie einige andere Javascript-Bibliotheken gleichzeitig? Es kann sein, dass andere Bibliotheken auch die Verknüpfung $ verwenden und es Ihre $ nicht mehr referenzierende jquery bekommt.

+0

Das war die Antwort. Ich verwende die jsTree-Komponente auch auf dieser Seite, die eine Datei _lib.js enthält, die eine andere Kopie von jQuery enthält. Wenn ich dieses _lib.js entferne, funktioniert es ok. – Craig

0

Wo ist der Code relativ befindet sich auf der jQuery UI geladen? Sowohl jQuery als auch jQuery UI müssen (in dieser Reihenfolge) geladen werden, bevor Sie versuchen, sie zu verwenden.

<script type="text/javascript" src=".../jquery-1.3.2.min.js"></script> 
<script type="text/javascript" src=".../jquery-ui-1.7.2.min.js"></script> 
<script type="text/javascript"> 
    ... your code goes here 
</script> 

Sie müssen besonders vorsichtig sein, wenn Sie JavaScript in Benutzersteuerelemente oder serverseitige Includes einbetten. Wenn Sie Ihr JavaScript am Ende der Seite laden und die oben erwähnten Steuerelemente oder Includes haben, können Sie Javascript-Fehler bekommen, da die Datei zwar enthalten ist, aber noch nicht analysiert wurde, bevor Sie auf die Funktionen verwiesen haben in den enthaltenen Dateien.