2012-11-13 34 views
5

Vì vậy, tôi có một hộp thoại jQueryUi đơn giản không được căn giữa và không thể di chuyển được.Hộp thoại jQueryUi bị kẹt ở góc trên cùng bên trái (và không thể di chuyển)

Thông báo lỗi tôi nhận được trong giao diện điều khiển của tôi đề cập đến

jquery-ui-1.8.17.custom.min.js:36 

để không cho tôi biết nhiều, chỉ là một số tham số truyền cho một số jQueryfunction không hợp lệ:

Uncaught TypeError: Object function (a,b){return new p.fn.init(a,b,c)} has no method 'curCSS' jquery-ui-1.8.17.custom.min.js:36 
a.fn.position jquery-ui-1.8.17.custom.min.js:36 
p.extend.each jquery-1.8.2.min.js:2 
p.fn.p.each jquery-1.8.2.min.js:2 
a.fn.position jquery-ui-1.8.17.custom.min.js:36 
a.widget._position jquery-ui-1.8.17.custom.min.js:156 
a.widget.open jquery-ui-1.8.17.custom.min.js:156 
(anonymous function) jquery-ui-1.8.17.custom.min.js:17 
p.extend.each jquery-1.8.2.min.js:2 
p.fn.p.each jquery-1.8.2.min.js:2 
a.widget.bridge.a.fn.(anonymous function) jquery-ui-1.8.17.custom.min.js:17 
openMediaLibrary 6:456 
onclick 6:187 

Hộp thoại div trông giống như sau:

<div id="mediaLibrary" title="Bildgalleri"> 
    <iframe width="950px" height="500px" src="{{ path('ImageGallery') }}" style="border:0;" /></iframe> 
</div> 

Hộp thoại được khởi tạo tại đây ...

$("#mediaLibrary").dialog({ 
    height: 550, 
    width:980, 
    modal: true, 
    autoOpen: false, 
    position: { my: "center", at: "center" }, 
}); 

... và mở đây

$("#mediaLibrary").dialog("open"); 
+2

Side lưu ý : bạn đóng iframe của mình hai lần: '' –

+2

thử sử dụng thư viện jquery ui mới nhất – Swarne27

+0

phiên bản mới đã thực hiện mẹo, cảm ơn! –

Trả lời

1

Bạn hiện không sử dụng tất cả các thông số cho position. Mặc định, hộp thoại được căn giữa trong trang nên việc xóa tùy chọn position sẽ xóa sự cố của bạn.

Cũng lưu ý lỗi cú pháp..đổi dấu phẩy trong đối tượng tùy chọn. Điều này sẽ phá vỡ trong IE

+0

Tôi đã xóa thông số vị trí, không thay đổi. Tôi chỉ cố gắng thêm nó bởi vì tôi đã gặp vấn đề ở nơi đầu tiên. –

+2

thử phiên bản này 'http: // code.jquery.com/ui/1.9.1/jquery-ui.js'.Thậm chí không cần phải tải xuống, chỉ cần thay đổi src trong thẻ. Có thể cần cập nhật css nếu điều này hoạt động kể từ 1.9 là phiên bản chính cũng là – charlietfl

+0

Phiên bản mới đã thực hiện mẹo lừa! –

0

Bạn dường như được sử dụng một tùy chỉnh xây dựng của jQuery UI. Trong download builder, hãy chắc chắn bạn đã bao gồm các thành phần được khuyến khích, bao gồm:

  • Chức
  • Draggable

Ngoài ra:

  • Sử dụng validator HTML yêu thích của bạn để đảm bảo rằng đánh dấu của bạn là chính xác
  • Đảm bảo rằng lỗi JavaScript không phải do một số mã khác gây ra
1

Thay đổi tệp phiên bản giao diện người dùng jQuery trong thư mục chủ đề người dùng hoặc plugin thành phiên bản mới của giao diện người dùng jQuery. Nếu vấn đề không được giải quyết, sau đó sao chép các tập tin đã được rút gọn của phiên bản giao diện người dùng jQuery vào thư mục wp-includes/js/jquery/ui (sao chép tất cả các tệp trong thư mục ui).

+0

Pawan, vui lòng để lại câu trả lời rõ ràng, đúng cách. Nếu bạn muốn mọi người có thể gửi email cho bạn, bạn có thể thêm email vào hồ sơ của mình. Bạn không cần phải đề cập đến nó trong câu trả lời. –

2

Tôi thấy đây là vấn đề với phiên bản jQuery và jQuery UI mà tôi đang sử dụng cùng nhau.

tôi thấy rằng sự kết hợp này của phiên bản dừng lại hộp thoại từ 'bám' vào góc trên bên trái:

  • jQuery 1.8.2
  • jQuery UI 1.10.1
Các vấn đề liên quan