Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Подскажите с кодом (https://javascript.ru/forum/jquery/75146-podskazhite-s-kodom.html)

face2005 06.09.2018 15:09

Подскажите с кодом
 
Ребята приветствую!
подскажите как вставить переменную в ссылку:
var copyLink = $('.copyLink a').attr('href');
  $('.mainBlogItim').wrap( '<a href="сюда"></a>' );

Dilettante_Pro 06.09.2018 15:24

face2005,
var copyLink = $('.copyLink a').attr('href');
  $('.mainBlogItim').wrap( '<a href="' + copyLink + '"></a>' );

face2005 06.09.2018 15:35

Спасибо!

но оно все в одну ссылку оборачивает.. подскажите как каждому блоку свою прицепить.

<div class="blog-item">
    <div class="copyLink"><a href="/v-chem-raznica/"></a></div>
    <div>text txt</div>
</div>

<div class="blog-item">
    <div class="copyLink"><a href="/v-chem-raznica11/"></a></div>
    <div>text txt</div>
</div>

<div class="blog-item">
    <div class="copyLink"><a href="/v-chem-raznica22/"></a></div>
    <div>text txt</div>
</div>

Nexus 06.09.2018 16:03

face2005, может быть так?
<div class="blog-item">
    <div class="copyLink"><a href="/v-chem-raznica/"></a></div>
    <div>text txt</div>
</div>

<div class="blog-item">
    <div class="copyLink"><a href="/v-chem-raznica11/"></a></div>
    <div>text txt</div>
</div>

<div class="blog-item">
    <div class="copyLink"><a href="/v-chem-raznica22/"></a></div>
    <div>text txt</div>
</div>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
$('.blog-item').wrap(function() {
    const link = this.querySelector('a');
    const response = $('<a/>').attr('href', link.href);

    link.parentNode.innerHTML = link.textContent;


    return response;
});
</script>

Dilettante_Pro 06.09.2018 16:19

face2005,
хотелось бы уточнить - что такое $('.mainBlogItim') ?

face2005 06.09.2018 16:50

mainBlogItim это внутренний div , я его упустил в html примере, он оборачивает все внутренности...
Спасибо, код сработал.. а то что там ссылка на картинку первой будет, тогда как?

face2005 06.09.2018 17:13

можно как-то ссылку вынимать из определенного класса?

Dilettante_Pro 06.09.2018 17:40

face2005,
Цитата:

Сообщение от face2005
можно как-то ссылку вынимать из определенного класса?

Приведите пример html и укажите, что нужно извлекать и что потом с этим делать

face2005 06.09.2018 17:49

<div class="blog-item">
     <div>text txt</div>
    <div><a href="/v-chem-raznica11/">ссылка любая</a></div>
    <div>text txt</div>
    <div class="moreLink"><a href="/v-chem-raznica113/">подробнее</a></div>
</div>

<div class="blog-item">
     <div>text txt</div>
    <div><a href="/v-chem-raznica11/">ссылка любая</a></div>
    <div>text txt</div>
    <div class="moreLink"><a href="/v-chem-raznica112/">подробнее</a></div>
</div>

<div class="blog-item">
     <div>text txt</div>
    <div><a href="/v-chem-raznica11/">ссылка любая</a></div>
    <div>text txt</div>
    <div class="moreLink"><a href="/v-chem-raznica11/">подробнее</a></div>
</div>


нужно обернуть blog-item ссылкой из moreLink

Dilettante_Pro 06.09.2018 18:14

Цитата:

Сообщение от face2005
нужно обернуть blog-item ссылкой из moreLink

Это практически тот же пример Nexus
<div class="blog-item">
    <div class="copyLink"><a href="/v-chem-raznica11/"></a>ссылка любая</div>
    <div>text txt</div>
    <div class="moreLink"><a href="/v-chem-raznica113/">подробнее</a></div>
</div>

<div class="blog-item">
    <div class="copyLink"><a href="/v-chem-raznica11/">ссылка любая</a></div>
    <div>text txt</div>
    <div class="moreLink"><a href="/v-chem-raznica112/">подробнее</a></div>
</div>

<div class="blog-item">
    <div class="copyLink"><a href="/v-chem-raznica11/"></a>ссылка любая</div>
    <div>text txt</div>
    <div class="moreLink"><a href="/v-chem-raznica11/">подробнее</a></div>
</div>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
$('.blog-item').wrap(function() {
    const link = this.querySelector('.moreLink a');
    const response = $('<a/>').attr('href', link.href);

    link.parentNode.innerHTML = link.textContent;


    return response;
});
</script>


Часовой пояс GMT +3, время: 13:44.