Jump to content
  • 0

Сжать код


a1rborn
 Share

Question

Еще раз прошу объяснить структуру построения кода)

Собственно есть страничка, на который более 20 ссылок (списки, img).

По клику на ссылку x1, divX меняется на div1.

По клику x2, divX меняется на div2.

И т.д., где divX - див с номером соответствующим активной ссылки.

Допустим div19 при клике на x5, сменится на div5. Вроде ясно объяснил)


var x1 = $('.x1'),
x2 = $('.x2'),
divY = $('.divY');
x1.on('click', function(){
$.when(
divY.children().fadeOut('slow'))
.then
(function() {divY.find('.x1').fadeIn('slow');}
);
}
);

Вот что у меня получилось, но таких кусков значит надо будет писать порядка 20, а это загромоздит мне там все)

Можно ли как то все эти операции засунуть в один кусок, пусть большой, но меньший чем 20 маленьких.

Каким синтаксическим выражением можно воспользоваться для уменьшения кода?

Пробовал подставлять ссылкам id и class, где class соответствовал классу диву, кот. должен появиться. Не вышло

Задействовал this - тоже не получилось.

Пока в раздумьях....

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

как бы я попробовал сделать:

1. назначить обработчик на блок с ссылками

http://learn.javascript.ru/event-delegation

если ссылки разбросаны по странице, то вешал бы обработчики по классу через цикл

// если сначала старый блок исчезает и только потом появляется новый, то

2. прячем #divX с fadeOut

3. копируем адрес ссылки, на которую кликнули

http://learn.javascript.ru/obtaining-event-object

4. вставляем необходимое содержимое в блок #divX

5. показываем блок с fadeIn

если не получится, и если выложишь заготовку со всеми блоками на http://jsfiddle.net/ то могу попробовать сделать

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By Азат313
      помогите с вопросом плес , застрял, не могу продолжить

    • By PShim
      Здравствуйте. Подскажите пожалуйста, что стоит дописать в скрипт чтобы файл сохранялся со стилем(css). Есть свой скрипт и есть взятый из jq(https://www.jqueryscript.net/other/Export-Html-To-Word-Document-With-Images-Using-jQuery-Word-Export-Plugin.html). 
      function Export2Doc(element, filename = ''){ var preHtml = "<html xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:w='urn:schemas-microsoft-com:office:word' xmlns='http://www.w3.org/TR/REC-html40'><head><meta charset='utf-8'><title>Export HTML To Doc</title></head><body>"; var postHtml = "</body></html>"; var html = preHtml+document.getElementById(element).innerHTML+postHtml; var blob = new Blob(['\ufeff', html], { type: 'application/msword' }); var url = 'data:application/vnd.ms-word;charset=utf-8,' + encodeURIComponent(html); filename = filename?filename+'.doc':'document.doc'; var downloadLink = document.createElement("a"); document.body.appendChild(downloadLink); if(navigator.msSaveOrOpenBlob ){ navigator.msSaveOrOpenBlob(blob, filename); }else{ downloadLink.href = url; downloadLink.download = filename; downloadLink.click(); } document.body.removeChild(downloadLink); }  
    • By PShim
      Привет всем. Может кто помочь написать кнопку выбора файла, после выбираем html и выгружаем его в секцию другого html
    • By Sergey2510
      https://proverka1.000webhostapp.com/
      На пк сайт отлично работает, а на сервере не запускает css файлы : wp-content/plugins/fullpage172/fullpage/nav/section/filled-circles.css@ver=2.9.2 ; Перерыл весь интернет и не нашел ответа.Помогите )
    • By anvyd
      Доброе время суток.
      У меня есть блок (картинка+ее описание), необходимо, что это было ссылкой.
      вопрос такой, как правильней огранизовать это?
      На ум приходят два варианта:
      1)
      <a href="#"> <figure> <img src="img/img.png" alt="описание"> <figcaption>описание</figcaption> </figure></a>2)
      <figure> <a href="#"><img src="img/img.png" alt="описание"></a> <a href="#"><figcaption>описание</figcaption></a></figure>Но правильно ли это, и если правильно, то какой вариант ближе к истине.
      Используя первый вариант я вижу, что у меня не ресайзятся изображения почему то, хотя max-width=100% и height=auto для изображений прописано. Но мне кажется первый вариант более логичный, не требуется плодить лишние ссылки, может кто подскажет как правильнее делать?

      еще я вычитал, что не надо помещать логотип+краткое описание в тег figure, кто что может сказать по этому поводу?
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy