Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.02.2016, 17:48
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Изменение css свойств родителя onfocus:last-child
Доброго времени суток, есть такая конструкция:
#header nav ul li
Нужно что бы при клике (:focus) на #header nav ul li:last-child у #header изменилось свойство width
Есть какие идеи?
Ответить с цитированием
  #2 (permalink)  
Старый 20.02.2016, 18:25
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

karakym,
Пример текущего глянуть есть ?
В принципе или какие-нидь хитрые велосипеды, или скрипт, посколь напрямую свойства родителя через css не правятся (исключая ИЕ)
Ответить с цитированием
  #3 (permalink)  
Старый 20.02.2016, 18:43
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Как такого примера нет, есть сайт на котором нужно это сделать!
Вы поймете что такое #header
Его width Нужно поменять на 100%
что бы при клике сайдбар вылез на всю страницу!
Ответить с цитированием
  #4 (permalink)  
Старый 20.02.2016, 18:44
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Ссылка
Ответить с цитированием
  #5 (permalink)  
Старый 20.02.2016, 19:04
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

karakym,
А что после ? Ну выдвинется она на мгновение, и сразу перезагрузиться страница - фокус потерян... ?
Ответить с цитированием
  #6 (permalink)  
Старый 20.02.2016, 19:17
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

В начало body, после этого скрипта:
<script type="text/javascript">
$(document).ready(function(){
 $('.spoiler_links').click(function(){
  $(this).parent().children('div.spoiler_body').toggle('normal');
  return false;
 });
});
</script>

Поставьте такой:
<script type="text/javascript">
$(document).ready(function(){
$('#nav ul>li>a').click(function (){
   $('#header').css({'width':'100%'});
});});
</script>
Ответить с цитированием
  #7 (permalink)  
Старый 21.02.2016, 15:11
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Deff,
Мне предложили такой вариант выполнения: https://jsfiddle.net/vv6e8786/1/
Но там не работает transition
Поэтому жму "+"
И еще вопрос, как бы сделать проверку на предмет нажатия кнопки ну типа
var clck = 0
$(...).click() {
if(clck == 1) {
clck = 0
$(#header).css(...)
...

Ну короче: при повторном нажатии стили меняются обратно (я с синтаксисом на ВЫ)
Ответить с цитированием
  #8 (permalink)  
Старый 21.02.2016, 15:12
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Вот мой модифицированный код:
$(document).ready(function(){
$('#nav ul>li>a').click(function (){
   $('#header').css({'width':'100%'});
   $('#header').removeClass('hov');
   $('#nav').css({'opacity':'0', 'visibility':'hidden'});
   $('#logo').css({'text-align':'center', 'margin-top':'100px'});
   $('#logo h1').css({'font-size':'2em'});
   $('#logo p').css({'font-size':'1em'});
   $('body').css({'overflow':'hidden'});
});});
Ответить с цитированием
  #9 (permalink)  
Старый 21.02.2016, 15:21
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Да бы не думали что я ленюсь, вот что у меня получилось:
$(document).ready(function(){
var clck = 0;
$('#nav ul>li>a').click(function (){
   if(clck == 0) {
   clck = 1;
   $('#header').css({'width':'100%'});
   $('#header').removeClass('hov');
   $('#nav').css({'opacity':'0', 'visibility':'hidden'});
   $('#logo').css({'text-align':'center', 'margin-top':'100px'});
   $('#logo h1').css({'font-size':'2em'});
   $('#logo p').css({'font-size':'1em'});
   $('body').css({'overflow':'hidden'});
} elseif(clck == 1) {
   clck = 0;
   $('#header').css({'width':'*stand*'});
   $('#header').addClass('hov');
   $('#nav').css({'opacity':'1', 'visibility':'visible'});
   $('#logo').css({'text-align':'right', 'margin-top':'auto});
   $('#logo h1').css({'font-size':'*stand*'});
   $('#logo p').css({'font-size':'*stand*'});
   $('body').css({'overflow':'auto'});
}
});});

Там где указал *stand* нужно поставить исходные значение (которые были до первого нажатия), потому что у меня адаптивность потеряется.
П.С. Где то в глубине мозга, в участках памяти про javascript и jquery я понимаю что это будет не то что надо, но может все же ошибаюсь!?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ещё раз изменение css файла посредством javascript JSN Events/DOM/Window 8 27.03.2020 10:42
изменение файла css с помощью js Chimmi Общие вопросы Javascript 3 28.05.2015 11:09
установка css свойств по умолчанию за 1 шаг. mister_maxim (X)HTML/CSS 1 15.05.2012 09:18
Задание Css свойств по средствам Jquery IONEX jQuery 5 09.01.2012 16:00
Как передеть css файл родителя фрейму? Zeal Events/DOM/Window 9 21.10.2008 16:47