Задать вопрос
@wwe2012

Переписать код из js в jQuery?

Добрый вечер, есть такой код на JS
function obr(ob){
    var pt=ob.getElementsByTagName("path");
    var up=[];
    
    for (var i=0;i<pt.length;i++) up.push(pt[i]);
    for (var i=0;i<up.length;i++) {
        var cl=up[i].cloneNode(true);
        cl.im=pt[i];
        cl.up=up;
        cl.indf=i;
        ob.appendChild(cl);
        cl.onclick=function(){
            for (var j=0;j<this.up.length;j++) this.up[j].parentNode.setAttribute("opacity",0);
            this.im.parentNode.setAttribute("opacity",1);
 
            //console.log(this.indf);
        };
    };
    
};


Мне его надо как то переписать на jQuery в этот код
jQuery(document).ready(function ($) {
    
 
    //контейнер
var  kot = $('div.f3_1_2_1_1.active').attr('data-vib');
//ползунок
var pols = $('ul.sliderUn2 li.active').attr('data-vib');
//рассчет
var res = $('input[name=nalik01]:checked').attr('data-vib')
//карта
var maps = $('path').attr('class');
 

    $('.sk').click(function() {
        
        
        console.log('Садовое кольцо');
 
 
        
                 //контейнер
                var  kot = $('div.f3_1_2_1_1.active').attr('data-vib');
                //ползунок
                var pols = $('ul.sliderUn2 li.active').attr('data-vib');
                //рассчет
                var res = $('input[name=nalik01]:checked').attr('data-vib')
                //карта
                var maps = $('path').attr('class');
 
                if(kot == 1)
                {
                    var sum = 4200 * pols;
 
                    
                    
                    $('.calcksum').text(sum+" руб."); 
                }
 
                if(kot == 2)
                {
                    var sum = 5900 * pols;
 
                    $('.calcksum').text(sum+" руб."); 
                }
 
                if(kot == 3)
                {
                    var sum = 10000 * pols;
 
                    $('.calcksum').text(sum+" руб."); 
                }
 
                if(kot == 4)
                {
                    var sum = 10000 * pols;
 
                    $('.calcksum').text(sum+" руб."); 
                }
 
                if(kot == 5)
                {
                    var sum = 12000 * pols;
 
                    $('.calcksum').text(sum+" руб."); 
                }
 
//$('.calcktitle').text('Садовое кольцо');
 
    });
//Тут код но он не влазит 
//Он почти дублируеться      
     
 
});

Помогите, если jQuery знаю еще как то то с JS вообще полный ноль
  • Вопрос задан
  • 195 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
@cache0
jQuery(document).ready(function($) {


	//контейнер
	var kot = $('div.f3_1_2_1_1.active').attr('data-vib');
	//ползунок
	var pols = $('ul.sliderUn2 li.active').attr('data-vib');
	//рассчет
	var res = $('input[name=nalik01]:checked').attr('data-vib')
	//карта
	var maps = $('path').attr('class');


	$('.sk').click(function() {


		console.log('Садовое кольцо');

		//контейнер
		var kot = $('div.f3_1_2_1_1.active').attr('data-vib');
		//ползунок
		var pols = $('ul.sliderUn2 li.active').attr('data-vib');
		//рассчет
		var res = $('input[name=nalik01]:checked').attr('data-vib')
		//карта
		var maps = $('path').attr('class');

		if (kot == 1) {
			var sum = 4200 * pols;



			$('.calcksum').text(sum + " руб.");
		}

		if (kot == 2) {
			var sum = 5900 * pols;

			$('.calcksum').text(sum + " руб.");
		}

		if (kot == 3) {
			var sum = 10000 * pols;

			$('.calcksum').text(sum + " руб.");
		}

		if (kot == 4) {
			var sum = 10000 * pols;

			$('.calcksum').text(sum + " руб.");
		}

		if (kot == 5) {
			var sum = 12000 * pols;

			$('.calcksum').text(sum + " руб.");
		}

		//$('.calcktitle').text('Садовое кольцо');

	});
	//Тут код но он не влазит 
	//Он почти дублируеться
	function obr(ob) {
		var pt = ob.getElementsByTagName("path");
		var up = [];

		for (var i = 0; i < pt.length; i++) up.push(pt[i]);
		for (var i = 0; i < up.length; i++) {
			var cl = up[i].cloneNode(true);
			cl.im = pt[i];
			cl.up = up;
			cl.indf = i;
			ob.appendChild(cl);
			cl.onclick = function() {
				for (var j = 0; j < this.up.length; j++) this.up[j].parentNode.setAttribute("opacity", 0);
				this.im.parentNode.setAttribute("opacity", 1);

				//console.log(this.indf);
			};
		};

	};


});


переписывать не нужно
Ответ написан
@wwe2012 Автор вопроса
Считать нормально стало, но вот перестало красить участки карты
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы