DiaryBlock
ピン留めした数字6桁のページを改行する
code:style.css
/* diary blocks */
.page-list-item.pin:not(.sixdigit) + .page-list-item.pin.sixdigit {
grid-column-start: 1;
}
code:userscript.js
// 1. 対象となる親要素(ul.grid)を取得
const gridContainer = document.querySelector('ul.grid');
if (gridContainer) {
// 2. 「ピン留めされていない最初の要素」を取得(これが境界線になります)
const firstNonPin = gridContainer.querySelector('.page-list-item:not(.pin)');
// 3. その中の pin クラスを持つ li 要素をすべて取得
const pins = gridContainer.querySelectorAll('.page-list-item.pin');
pins.forEach(pin => {
const title = pin.getAttribute('data-page-title');
// 4. 数字6桁の判定
if (title && /^\d{6}$/.test(title)) {
pin.classList.add('sixdigit');
if (firstNonPin) {
// 「ピン留めなし要素」の前に挿入することで、ピンエリアの最後に持っていく
gridContainer.insertBefore(pin, firstNonPin);
} else {
// もしピン留め記事しかない場合は、普通に末尾に追加
gridContainer.appendChild(pin);
}
}
});
}