Автоматическая подгрузка следующих страниц и вставка их содержимого в текущую страницу. Поддерживает тысячи сайтов даже с настройками по умолчанию.
這網站規則是我寫的,網站上面的按鈕會動態加載影片清單,例如點了最高收藏,永頁機如果已經有翻頁,那麼翻出來的部份不會根據動態加載重新排序成最高收藏,只能刷頁面重新加載,那麼之後翻的才是按最後收藏的排序。
不過這規則也算失效了,以前後面翻出來還會按順序,現在不會了,不管哪個分類翻出來的順序都一樣,規則看作者要不要改寫。
感谢大佬的规则,我记得以前好像能用来着,但是感觉这个网站的规则不太好写
我自己也尝试过,还是感觉太复杂了,第二页翻出来的不是具体分类就放弃了
{ "name": "Jable", "author": "skofkyo", "example": "https://jable.tv/new-release/", "url": "^https?://(jable|fs1)\\.(tv|app)/", "nextLinkByJs": "let checked=doc.querySelector('li.active>a');let blockId=checked.dataset.blockId;let sortBy=checked.dataset.parameters?.replace('sort_by:','');let page=doc.querySelector('.page-link.active').innerText;return `?mode=async&function=get_block&block_id=${blockId}&sort_by=${sortBy}&from=${parseInt(page)+1}`;", "pageElement": "section>.row", "replaceElement": ".pagination", "action": 0, "refreshByClick": "[data-action='ajax']" }
用 nextLinkByJs 替換 nextLink 生成下一頁鏈接,然後用 refreshByClick 來指定按鈕點擊后重新初始化就行了。
我就看了熱門分類,可能還不完善,就不提交到規則庫了。等 skofkyo 完善后合并吧。
好久沒碰永頁機規則了,自己常逛的網站都使用正常,有空再把寫過的規則全部檢查一遍。
比起Jable我比較愛用supjav 哈哈
整理規則到這網站了
{ "name": "Jable", "example": "https://jable.tv/new-release/", "url": "^https?://(jable\\.tv|fs1\\.app)/", "action": 0, "refreshByClick": "[data-action='ajax']", "nextLinkByJs": "let checked=doc.querySelector('.container li.active>a,li:has(>.active)+li>a');let blockId=checked.dataset.blockId;let parameters=checked.dataset.parameters;let[sortBy,from]=parameters.split(';');sortBy=sortBy.replace('sort_by:','');from=from.replace('from:','');let searchParams=new URLSearchParams({mode:'async',function:'get_block',block_id:blockId,sort_by:sortBy,from:from});return'?'+searchParams;", "pageElement": "section>.row", "replaceElement": ".pagination", "pageAction": "let ps=[...document.querySelectorAll('section>.row')];let last=ps.at(-1);last.querySelectorAll('.img-box>a').forEach(a=>{a.onmouseenter=e=>{let v=document.createElement('video');let img=a.querySelector('img');let src=img.dataset.preview;$(v).attr({loop:'',autoplay:'',src:src});$(v).css({position:'absolute',left:'0',top:'0',width:img.offsetWidth+'px',height:img.offsetHeight+'px',background:'#000000',visibility:'visible'});a.appendChild(v)};a.onmouseleave=e=>{a.querySelector('video').remove()}})", "css": ".pagetual_pageBar{margin-top:0px!important;margin-bottom:20px!important}" }
下一頁的API URL
let checked = doc.querySelector('.container li.active>a,li:has(>.active)+li>a'); let blockId = checked.dataset.blockId; let parameters = checked.dataset.parameters; let [sortBy, from] = parameters.split(';'); sortBy = sortBy.replace('sort_by:', ''); from = from.replace('from:', ''); let searchParams = new URLSearchParams({ mode: 'async', function: 'get_block', block_id: blockId, sort_by: sortBy, from: from }); return '?' + searchParams;
讓下一頁也能有影片預覽事件
let ps = [...document.querySelectorAll('section>.row')]; let last = ps.at(-1); last.querySelectorAll('.img-box>a').forEach(a => { a.onmouseenter = e => { let v = document.createElement('video'); let img = a.querySelector('img'); let src = img.dataset.preview; $(v).attr({ loop: '', autoplay: '', src: src }); $(v).css({ position: 'absolute', left: '0', top: '0', width: img.offsetWidth + 'px', height: img.offsetHeight + 'px', background: '#000000', visibility: 'visible' }); a.appendChild(v) }; a.onmouseleave = e => { a.querySelector('video').remove() } })
我丢,感谢大佬们的规则贡献,本来想自己试试还是写不出来复杂的网站规则,还是照搬得了。我还是只能写简单的网站,jable真的很好用哈哈哈
https://jable.tv/开启永页机会导致此网站的影片分类不能点击,比如最高收藏、热门这些分类,点一下页面就会刷新一下