2013-12-09 3 views
2

Я выглядел высоко и низко и не могу понять это!значения jQuery push, pop и wrap

На странице у меня есть ссылки, имеющие определенный класс (plmore). На той же странице у меня есть divs, у которых есть определенный класс (fcontainer) среди других. Количество ссылок с классом plmore всегда будет равным числу div, использующему класс fcontainer.

Мой вопрос:

мне нужно обернуть дивы, которые имеют fcontainer класс с помощью ссылок, найденных plmore.

ПСЕВДОКОД:
GET ARRAY OF HREFS
GET ARRAY OF DIV IDS
WRAP DIVS С HREFS

Это то, что я до сих пор - я довольно новый в JQuery, и я не уверен синтаксиса для этого. Может ли кто-нибудь помочь? Я буду очень благодарен!

<script> 
    jQuery(document).ready(function($) { 

    var hrefs = new Array();  
    $('a.plmore').each(function(){ 
     hrefs.push($(this).find('a').attr('href')); 
    }); 

    var features = new Array(); 
    $('fcontainer').each(function(){ 
     features.push($(this).find('div').attr('id')); 
    }); 

    /* how does one pop from both arrays and wrap?? */ 
    }); 
</script> 

Большое вам спасибо!

ответ

2

Вы имеете в виду, как

jQuery(function ($) { 
    //find all the target anchor elements 
    var $as = $('a.plmore'); 

    //find the div elements 
    $('.fcontainer').each(function (idx) { 
     //wrap the div at index idx using the href value of anchor element at index idx 
     $(this).wrap($('<a/>', { 
      href: $as.eq(idx).attr('href') 
     })) 
    }); 
}); 

Демо: Fiddle

+0

Это Ах так близко! определенно обертывает div сейчас - спасибо за это! Атрибут href, похоже, не воспринимается (он не добавляется в тег ). Есть ли подсказки, почему это может быть? – user3083452

+0

Это живое! Ты великолепен! Спасибо огромное! В этом есть много слоев DIVs ... Мне просто нужно было настроить таргетинг на другой. Спасибо огромное! – user3083452