<i class="fa fa-чтототам"></i>
) придётся искать через всех её возможных родителей нужный класс - и так делать для каждого типа кликабельных элементов <body>
предложил лишь для примера. Так то можно отслеживание события в рамках любого элемента таким макаром назначать. window.addEventListener('resize', function(){
if( getWindowWidth() >= 400){
$('.asd').find('p').addClass('wrap-this').unwrap();
}
if( getWindowWidth() < 400){
$('.wrap-this').wrap('<div class="asd"></div>');
}
})
@media
запросов для разных размеров экрана можно поменять - сделав набор стилей для вашего класса .asd с нужными параметрами размеров/отступов и ещё чего-то, что вам мешает на разных размерах экрана window.addEventListener('resize', function(){ - это прослушиватель события resize (проверяет произошло ли изменение размеров окна браузера)
если ширина экрана меньше чего-то, то ... $('.asd').find('p').addClass('wrap-this').unwrap(); - назначить обёрнутому <p> класс wrap-this и убрать обёртку
если ширина экрана больше чего-то, то ... $('.wrap-this').wrap('<div class="asd"></div>'); - обернуть .wrap-this в .asd
})
var tariffs = {
sunny: {// улица
1:{ // кол-во комнат
1:{ // первый вариант 1комн квартиры со своей площадью и ценой
square: 41.27, // площадь
price: 2050000 // цена
},
2:{ // второй вариант 1комн квартиры со своей площадью и ценой
square: 46.96,
price: 2050000
},
3:{ // третий вариант 1комн квартиры со своей площадью и ценой
square: 48.31,
price: 2150000
}
},
2: {...}, // аналогично делаете для двухкомнатных квартир
3: {...} // и для трёхкомнатных
},
kobceva: {...}, // и тоже самое прописываете для улицы Кобцева
gagarina: {...} // и для Гагарина
}
Object.keys(tariffs)
- возвращает массив с улицамиObject.keys(tariffs['улица'])
Object.keys(tariffs['улица']['кол-во комнат'])
tariffs['улица']['кол-во комнат']['номер планировки'].square
tariffs['улица']['кол-во комнат']['номер планировки'].price
tariffs.forEach(function(element,index,array){
// element - это первый ближайший дочерний элемент в объекте tariffs
// index - его порядковый номер
// array - наш объект tariffs, если мы захотим его внутри функции полистать или изменить
})
//tariffs['улица'] - для перебора вариантов квартир по кол-ву комнат на улице
//tariffs['улица']['кол-во комнат'] - для перебора вариантов планировок для n-комнатной квартиры на нужной улицы
tariffs['улица']['кол-во комнат']['номер планировки'].forEach(function(element,index,array){
// будет перебирать нам фактически площадь и цену, согласно выбранной улицы - кол-ва комнат - планировки квартиры
})