使用JS

时间:2015-08-27 13:41:50

标签: javascript getelementbyid

使用此view-page-source有我的参考http://www.ebest.cl/audifonos-alta-fidelidad-house-of-marley-revolution.html

我正在尝试返回" 3355"从这个div使用Javascript。

     
  1. 我想首先在Chrome开发者工具控制台中返回此内容。
  2. document.getElementsByClassName("数据PRODUCT-ID&#34);

    当我执行此操作时,我返回一个空数组。 []

    1. 我希望能够在google标记管理器变量中返回此内容。  我编写代码后,我至少可以在控制台中测试并返回它。
    2. 谢谢! 斯潘塞

1 个答案:

答案 0 :(得分:0)

它是data- *属性,而不是className。我经历了找到具有该数据属性的孩子而不是直接引用正确节点的麻烦,因为我(可能你)不知道yotpo bottomline类是否每次都可用,所以我把更加相信product-shop className可用。如果页面上有多个产品,您只能获得第一个ID。扩展到所有ID是微不足道的。

var productID = Array.prototype.slice.call(
        document.getElementsByClassName('product-shop')[0].childNodes
    ).reduce(function (acc, child) {
        var att = (child.nodeName === 'DIV') ? child.getAttribute('data-product-id') : false;
        if (att) acc = att;
        return acc;
    }, '');