2015-01-26 4 views
0

У меня есть форма с несколькими элементами управления, содержащимися в divs на ней. Мы разрешаем пользователю перейти в режим редактирования, а затем они могут перемещать и изменять размеры элементов управления по своему вкусу, включая главный div, который содержит все элементы управления.jQuery Изменение размера для родительского только

Не вдаваясь в подробности, у меня есть возможность изменения размера на главном div и всех дочерних элементах. В какой-то момент я хочу отключить только родительский размер, оставляя всех детей такими, как есть.

Но если я скажу jQuery, чтобы отключить изменение размера для родителя, он автоматически сделает то же самое для своих детей.

Я могу обойти его, уничтожив все изменяемые по размеру для всего, а затем просто переделать его только для детей, но я предпочел бы вместо этого включить и отключить.

Так что, если я звоню $('#SomeID').resizable('disable'), он не должен воздействовать ни на один из элементов управления детьми.

Кто-нибудь знает, как я могу это сделать?

+0

У вас больше шансов получить андерсер, если вы предоставите свой код. –

+0

Как вы узнали ответ Ник, который был опубликован в тот же день, что и ваш вопрос? – halfer

ответ

0

Предполагая, что вы используете JQueryUI (из-за вашу перезначительную методу):

Если вы хотите удалить изменяемую функцию от конкретного элемента вы можете сделать это, просто удалив соответствующий класс из вашего элемента

$(document).on('click', '.child', function() { \t 
 
\t $(this).removeClass('ui-resizable'); 
 
}); 
 

 
$(document).on('click', '.container', function() { \t 
 
\t $(this).removeClass('ui-resizable'); 
 
}); 
 

 
$(document).ready(function() { 
 
\t \t $(".container").resizable(); 
 
\t \t $(".child").resizable(); 
 
});
.container { 
 
    width: 200px; 
 
    height: 400px; 
 
    background-color: blue; 
 
} 
 

 
.child { 
 
    width: 100px; 
 
    height: 100px; 
 
    background-color: green; 
 
    border: 2px solid black; 
 
}
<html> 
 
<body> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> 
 
    <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/themes/smoothness/jquery-ui.css" /> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script> 
 
\t <div class="container"> 
 
\t \t <div class="child"> 
 
\t \t </div> 
 
\t \t <div class="child"> 
 
\t \t </div> 
 
\t \t <div class="child"> 
 
\t \t </div> 
 
\t </div> 
 
</body> 
 
</html>

Если щелкнуть элемент удаляется только изменяемая особенность этого конкретного элемента.

Смежные вопросы