suzuri random autopagerize
by
yuta25
2022-02-24 [2022/02/24 19:57:26]
suzuri random autopagerize
/*
* @title suzuri random autopagerize
* @description suzuri random autopagerize
* @include https://suzuri.jp/
* @license MIT
* @javascript_url
*/
(function() {
var loading = false;
var x = new XMLHttpRequest();
var lastElement = function() {
var e = document.querySelectorAll('.content.product');
return e[e.length - 1];
}();
var insertPoint = lastElement.nextSibling;
x.onload = function(e) {
if (x.status <= 200) {
var doc = e.target.response;
Array.prototype.forEach.call(doc.querySelectorAll('.content.product'), function(elem) {
if (image = elem.querySelector('#product-image .zoom > img.product-main-image')) {
image.src = image.dataset.original
lastElement.parentElement.insertBefore(elem, insertPoint);
}
});
}
loading = false;
};
function loadNext() {
loading = true;
x.open('GET', '/products/random', true);
x.responseType = 'document';
x.send(null);
};
window.addEventListener('scroll', function() {
if (loading) return;
var remain = document.documentElement.scrollHeight - window.innerHeight - window.pageYOffset;
if (remain < 2000) {
loadNext();
}
}, false);
loadNext();
}());
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。