[英]JQuery .resizable, how to select child for alsoResize property
我有彈出的窗口,並且可以拖動和調整大小。 一切工作都很好,除了我需要調整窗口大小以在其中調整div的大小。 通過設置alsoResize: 'selector'
可以輕松實現,但是,此窗口的每個實例在其中具有相同的div和相同的類名。 如果您調整一個窗口的大小,它將調整所有打開的窗口的內部div的大小。
$(chatWindow).draggable({ handle: '.dragHandle', containment: 'window', stack: '.chatWindow' })
.resizable({ resize: function (event, ui) {
api.reinitialise();
},
alsoResize: chatWindow + ' > .chatTerminal',
start: function (event, ui) {
var currentPosition = api.getContentPositionY();
api.scrollToBottom();
var maxPosition = api.getContentPositionY();
api.scrollToY(currentPosition);
var isAtBottom = (currentPosition == maxPosition);
$(chatWindow).data('isAtBottom', isAtBottom);
},
stop: function (event, ui) {
if ($(chatWindow).data('isAtBottom'))
api.scrollToBottom();
},
minHeight: 125,
minWidth: 250
});
alsoResize: chatWindow + ' > .chatTerminal',
不適用於選擇子元素。 我不能使用.find,因為AlsoResize僅采用選擇器。 顯而易見的快速解決方案是將窗口名稱(每個新窗口都唯一)附加到內部div,然后在內部div上使用id選擇器。 我只是想知道是否有更好的方法僅使用AlsoResize的選擇器來固定子元素。
var chatTerminal = '#' + channel + "_terminal";
alsoResize: chatTerminal
channel
是主窗口的唯一ID,因此在創建窗口時,我只是將相同的唯一ID附加到子div上。 然后,我可以使用chatTerminal
從AlsoResize選項中引用它。 我列出了這個答案,以防沒人回答,我會接受。 但是,如果您有更好的方法從選擇器字符串中選擇一個孩子,請告訴我:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.