JS从其他页面计算具有相同类的元素数

时间:2018-05-25 08:43:35

标签: javascript html css

我正在尝试找到一个解决方案,将许多元素放在我的另一页上的特定类中。是否可以仅使用JS将这些数据从一个页面传递到另一个页面? 如果不在第二页上植入任何代码,我可以解决它吗?

第1页(将包括div)

<div class"toy"></div>
<div class"toy"></div>
<div class"toy"></div>
<div class"toy"></div>
<div class"toy"></div>

第2页(这里的数字应该是用类#34;玩具&#34;从第1页开始计算div的结果)。

Ther 5 玩具等着你。

1 个答案:

答案 0 :(得分:0)

假设http://example.com/page1.html是您示例中第一页的地址。这是一个JS代码,它通过加载页面1并解析它来计算元素的数量:

function onCount(count) {
    if (typeof count === 'number') {
        alert('There are ' + count + ' Toys waiting for you');
    } else {
        alert('An error has happened');
    }
}

function ajaxGet(url, onload, onerror) {
    var request = new XMLHttpRequest();
    request.onload = function () {
        if (request.status >= 200 && request.status < 400) {
            onload(request.responseText);
        } else {
            onerror();
        }
    };
    request.onerror = onerror;
    request.open('GET', url, true);
    request.send();
}

ajaxGet('http://example.com/page1.html', function (response) {
    var dom = new DOMParser().parseFromString(response, 'text/html');
    onCount(dom.querySelectorAll('.toy').length); // '.toy' is a CSS selector of an element you need to count
}, function () {
    onCount(false);
});

您应该将此代码添加到第二页的JavaScript代码中。