【问题标题】:Retrieve REL contents from variable number of elements and store in array从可变数量的元素中检索 REL 内容并存储在数组中
【发布时间】:2014-02-04 18:53:21
【问题描述】:

我一直在尝试解决如何做到这一点,但是对于我的 jQuery/JavaScript 水平来说,移动部件太多了,所以我不知道哪里出了问题。

我只是想从可变数量的 area 标签中的所有 REL 属性创建一个数组:

<map name="Map">
    <area shape="rect" coords="45,13,125,107" class="lightbox" rel="/img/yachts/layouts/sml/horizon-56-aft-stateroom.jpg" href="/img/yachts/layouts/lrg/horizon-56-aft-stateroom.JPG" alt="Aft Stateroom" title="Aft Stateroom">
    <area shape="rect" coords="310,37,366,83" class="lightbox" rel="/img/yachts/layouts/sml/horizon-56-vip-cabin-2.JPG" href="/img/yachts/layouts/lrg/horizon-56-vip-cabin-2.JPG" alt="VIP Cabin" title="VIP Cabin">
    <area shape="rect" coords="126,19,207,99" class="lightbox" rel="/img/yachts/layouts/sml/horizon-56-salon.jpg" href="/img/yachts/layouts/lrg/horizon-56-salon.jpg" alt="Saloon" title="Saloon">
    <area shape="rect" coords="207,12,284,52" class="lightbox" rel="/img/yachts/layouts/sml/horizon-56-port-cabin.jpg" href="/img/yachts/layouts/lrg/horizon-56-port-cabin.jpg" alt="VIP Cabin" title="Port Cabin">
    <area shape="rect" coords="223,68,285,116" class="lightbox" rel="/img/yachts/layouts/sml/horizon-56-starbord-cabin.jpg" href="/img/yachts/layouts/lrg/horizon-56-starbord-cabin.jpg" alt="VIP Cabin" title="Starboard Cabin">
    <area shape="rect" coords="4,16,37,107" class="lightbox" rel="/img/yachts/layouts/sml/horizon-56-platform.jpg" href="/img/yachts/layouts/lrg/horizon-56-platform.jpg" alt="VIP Cabin" title="Swim Platform">
    <area shape="rect" coords="366,28,406,96"  class="lightbox" rel="/img/yachts/layouts/sml/Horizon-56-bowpad.jpg" href="/img/yachts/layouts/lrg/horizon-56-bowpad.JPG" alt="Bow" title="Bow of Horizon 56">
  </map>

我的最终目标是将它提供给一个简单的 jQuery 预加载器来预加载这些图像,但是一旦我可以构建数组,我就可以处理那个位!

提前感谢您的任何帮助!

鲍勃

【问题讨论】:

    标签: jquery arrays area rel


    【解决方案1】:

    演示:http://jsfiddle.net/CFGb7/1/

    // create array for storing rels
    var rels = [];
    // loop through each `area` element
    // you could adjust this selector to be more specific if you like
    $('area').each(function(i, el){
        // push onto the array, each element's `rel` attribute
        rels.push($(el).attr('rel'));
    })
    // check what the array looks like now :)
    console.log(rels)
    // should log to console...
    // ["/img/yachts/layouts/sml/horizon-56-aft-stateroom.jpg", "/img/yachts/layouts/sml/horizon-56-vip-cabin-2.JPG", "/img/yachts/layouts/sml/horizon-56-salon.jpg", "/img/yachts/layouts/sml/horizon-56-port-cabin.jpg", "/img/yachts/layouts/sml/horizon-56-starbord-cabin.jpg", "/img/yachts/layouts/sml/horizon-56-platform.jpg", "/img/yachts/layouts/sml/Horizon-56-bowpad.jpg"]
    

    【讨论】:

    • 我的荣幸 - jQuery 是一个很棒的工具,堆栈溢出也是如此。我不知道没有他们中的任何一个我会在哪里:)
    猜你喜欢
    • 2017-05-11
    • 1970-01-01
    • 1970-01-01
    • 2010-10-13
    • 1970-01-01
    • 2015-04-26
    • 2013-11-02
    • 2015-09-20
    • 1970-01-01
    相关资源
    最近更新 更多