Try again to fix refresh navigation
This commit is contained in:
parent
cf1e9d47c2
commit
fd32dcc534
@ -48,12 +48,17 @@
|
|||||||
</div>
|
</div>
|
||||||
<script>
|
<script>
|
||||||
function getRefreshParams() {
|
function getRefreshParams() {
|
||||||
var metaRefresh = document.querySelector('meta[http-equiv="refresh"]');
|
var path = window.location.pathname.slice(1);
|
||||||
if (!metaRefresh) return null;
|
var parts = path.split('/');
|
||||||
var content = metaRefresh.getAttribute('content');
|
if (parts.length < 3) return null;
|
||||||
|
var order = parts[0];
|
||||||
|
if (order !== 'next' && order !== 'random') return null;
|
||||||
|
var delay = parseInt(parts[1]);
|
||||||
|
if (isNaN(delay)) return null;
|
||||||
return {
|
return {
|
||||||
delay: parseInt(content.split(';')[0].trim()),
|
delay: delay,
|
||||||
url: content.split('url=')[1]
|
order: order,
|
||||||
|
hash: parts[2]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -67,16 +72,15 @@
|
|||||||
document.getElementById('next-btn').click();
|
document.getElementById('next-btn').click();
|
||||||
} else if (e.code === 'Equal') {
|
} else if (e.code === 'Equal') {
|
||||||
var params = getRefreshParams();
|
var params = getRefreshParams();
|
||||||
if (params) window.location.href = params.url;
|
if (params) window.location.href = `/${params.order}/${params.delay + 1}/${params.hash}`;
|
||||||
} else if (e.code === 'Minus') {
|
} else if (e.code === 'Minus') {
|
||||||
var params = getRefreshParams();
|
var params = getRefreshParams();
|
||||||
if (params && params.delay > 1) window.location.href = params.url;
|
if (params && params.delay > 1) window.location.href = `/${params.order}/${params.delay - 1}/${params.hash}`;
|
||||||
} else if (e.key.toLowerCase() === 'o') {
|
} else if (e.key.toLowerCase() === 'o') {
|
||||||
var params = getRefreshParams();
|
var params = getRefreshParams();
|
||||||
if (params) {
|
if (params) {
|
||||||
var newOrder = params.url.split('/')[1] === 'next' ? 'random' : 'next';
|
var newOrder = params.order === 'next' ? 'random' : 'next';
|
||||||
var newUrl = params.url.replace('/' + (newOrder === 'next' ? 'next' : 'random') + '/', '/' + newOrder + '/');
|
window.location.href = `/${newOrder}/${params.delay}/${params.hash}`;
|
||||||
window.location.href = newUrl;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user