Показать сообщение отдельно
  #4 (permalink)  
Старый 12.06.2016, 08:25
Аспирант
Отправить личное сообщение для mitrich38 Посмотреть профиль Найти все сообщения от mitrich38
 
Регистрация: 11.06.2016
Сообщений: 64

новечек)))


Добрый день!
Нужно поправить JS
Есть контейнер помещенный в дерево DOM, с одной неизвестной в классе, пользователь присваивает неизвестную класса контейнеру, задача присвоить уникальный класс родителю.
Контейнеров может быть много с разными уникальными именами, задача присвоить только верхнему родителю этого потомка уникальный класс, не трогая других родителей.
данный скрипт не справляется с этой задачей, находит всеx родителей и присваивает им класс X и Y одновременно

Переменная
<list name="parametr" label="effect" defaultValue="X">
		<value name="parametr_X" label="X"/>
		<value name="parametr_Y="Y"/>
		<value name="parametr_Z="Z"/>
		</list>


HTML До

<div class="clearfix colelem" id="u111">
		<div class="clearfix grpelem" id="u222">
			<div class="grpelem" id="u333">
				<div class="myanimation {parametr}"></div>

	<div class="clearfix colelem" id="u444">
		<div class="clearfix grpelem" id="u555">
			<div class="grpelem" id="u666">
				<div class="myanimation {parametr}"></div>


Нужно получить такой HTML

<div class="myanimation parametr_X" id="u111">
		<div class="clearfix grpelem" id="u222">
			<div class="grpelem" id="u333">
				<div class="myanimation parametr_X"></div>

	<div class="myanimation parametr_Y" id="u444">
		<div class="clearfix grpelem" id="u555">
			<div class="grpelem" id="u666">
				<div class="myanimation parametr_Y"></div>


Script
$(document).ready(function() {	
var $elem = $('.myanimation .{param_styletype}');
while (true) {
if ($elem.parent() && $elem.parent().is('.grpelem, .colelem')) {
	$elem = $elem.parent();
	} else {
	break;
				}
				}
$elem.addClass('wow {param_styletype}');
$('textarea').val($('#block').html());
});
Ответить с цитированием