Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.07.2016, 13:35
Новичок на форуме
Отправить личное сообщение для Nikita21 Посмотреть профиль Найти все сообщения от Nikita21
 
Регистрация: 28.07.2016
Сообщений: 9

Прошу помощи. Выполнение по клику и при загрузке
Всем привет. Помогите, пожалуйста, новичку.
Хочу сделать, чтобы два блока удалялись в зависимости от табов, при этом, что бы это происходило при экране >=720px.

На данный момент сделал 2-х ступенчатые условия, где:
Если нет клика по элементу, то выполняется функция, если клик есть, то выполняется такая же, скопированная функция. Что-то мне подсказывает, что есть другой способ, но ситаксис плохо знаю. Помогите, пожалуйста.
<div id="event_tabs" style="display: block;">
<ul>
<li class="active"><a href="kino" data-id="kino" class="btn"></a>
</li><li class=""><a href="clubs" data-id="clubs" class="btn"></a>
</li><li class=""><a href="theater" data-id="theater" class="btn"></a>
</li><li class=""><a href="others" data-id="others" class="btn"></a></li>        
</ul>
</div>

<div id="bottom_afisha" class="clearfix"></div>
<div id="yandex_ad_afisha_123"></div>

var direct = jQuery('.direct_container_afisha')
var bottom = jQuery('#bottom_afisha')

if (jQuery(window).width() >= 720) {
  jQuery("#event_tabs li a").click(function() {
if (jQuery('#event_tabs li.active a').data( "id" ) == "kino"){
direct.detach(); 
bottom.live();}
else if (jQuery('#event_tabs li.active a').data( "id" ) == "others") {
  direct.live();
bottom.detach();}
})}

else if (jQuery(window).width() >= 720){
if (jQuery('#event_tabs li.active a').data( "id" ) == "kino"){ 
  direct.detach(); 
  bottom.live();}
else if (jQuery('#event_tabs li.active a').data( "id" ) == "others") {
  direct.live();
  bottom.detach();}}

Последний раз редактировалось Nikita21, 29.07.2016 в 11:03.
Ответить с цитированием
  #2 (permalink)  
Старый 28.07.2016, 14:11
Новичок на форуме
Отправить личное сообщение для jorjsmile Посмотреть профиль Найти все сообщения от jorjsmile
 
Регистрация: 23.07.2016
Сообщений: 2

Простите, слабо понимаю что значит
Цитата:
Если нет клика по элементу, то выполняется функция
Javascript - событийно ориенитрованный ( по большей части ). если нет события - ничего не будет выполняться.
Цитата:
if(jQuery("#event_tabs li a").click)
условие выполняется всегда, поскольку вы проверяется есть ли свойство click в объекте jQuery, а оно там есть !

Вам нужно точно определиться, при каком событии должен выполняться обработчик ( функция ) в вашем случае


if (jQuery(window).width() < 720) return;

if(jQuery('#event_tabs li.active a').data( "id" ) == "kino"){
    direct.detach(); 
    bottom.live();
}
else if ( jQuery('#event_tabs li.active a').data( "id" )=="others") {
   direct.live();
   bottom.detach();
}
}
Ответить с цитированием
  #3 (permalink)  
Старый 28.07.2016, 15:20
Новичок на форуме
Отправить личное сообщение для Nikita21 Посмотреть профиль Найти все сообщения от Nikita21
 
Регистрация: 28.07.2016
Сообщений: 9

Сообщение от jorjsmile Посмотреть сообщение
Простите, слабо понимаю что значит

Javascript - событийно ориенитрованный ( по большей части ). если нет события - ничего не будет выполняться.
условие выполняется всегда, поскольку вы проверяется есть ли свойство click в объекте jQuery, а оно там есть !

Вам нужно точно определиться, при каком событии должен выполняться обработчик ( функция ) в вашем случае


if (jQuery(window).width() < 720) return;

if(jQuery('#event_tabs li.active a').data( "id" ) == "kino"){
    direct.detach(); 
    bottom.live();
}
else if ( jQuery('#event_tabs li.active a').data( "id" )=="others") {
   direct.live();
   bottom.detach();
}
}
Имеется ввиду, что если запускать скрипт только после нажатия, то он не срабатывает на первой странице-табе, где по дефолту стоит #event_tabs li.active a data-id="kino".

Еще один глупый вопрос:
if (jQuery(window).width() < 720) return; - выдает Illegal return statement. Могли бы вы подсказать куда его сунуть?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить некоторые ссылки со страницы при помощи js goga5 Общие вопросы Javascript 7 12.07.2016 14:41
Colorbox сразу при загрузке FirstRelict jQuery 3 26.05.2013 13:51
перемещение по строкам таблицы при помощи стрелок на клавиатуре Сергей1980 jQuery 0 27.03.2013 16:36
Прошу помощи xavi AJAX и COMET 8 28.01.2013 10:36
Открытие модального окна (попап) при загрузке. Bengl Элементы интерфейса 2 31.05.2012 10:34