您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Fully responsive, endless scrolling, wide
当前为
Ultimate F95
A UserScript designed to enhance and modernize the browsing experience on the F95zone "Latest Games & Updates" page (
/sam/latest_alpha/
).
This script aims to provide a more spacious, customizable, and user-friendly layout for viewing game and comic updates on F95zone. It started as a simple CSS redesign and has evolved to include dynamic content loading with infinite scroll and attempts to maintain compatibility with the site's own JavaScript features.
.p-body-inner
) to 95% of the current browser viewport width using JavaScript (window.innerWidth
).grid-template-columns: repeat(auto-fit, minmax(250px, 1fr))
) for a responsive feel within the wider layout.latest_data.php
AJAX endpoint.latest.min.js
), including hover effects and tooltips (via XF.activate
).The default F95zone "Latest Updates" page can feel a bit cramped, especially on wider screens. This script provides:
Ultimate-F95.user.js
file in this repository (or use the direct install link if provided, e.g., from GreasyFork).f95zone.to
) and click "Install".https://f95zone.to/sam/latest_alpha/*
.Once installed, the script works automatically when you navigate to the F95zone "Latest Games & Updates" alpha page.
Currently, most settings are hardcoded within the script:
minmax(250px, 1fr)
in the CSS for .grid-normal
. Lowering 250px
will fit more, smaller items per row.itemsPerRow
variable if latestUpdates.options
is not found).setTimeout
is used before initializing infinite scroll to allow the site's own JavaScript to load initial content. This can be adjusted in the script.Future versions might include a settings panel using GM_setValue
/GM_getValue
for easier customization.
.p-body-inner
element and sets its max-width
style property to 95% of window.innerWidth
. This calculation is also re-applied if the browser window is resized.IntersectionObserver
on a trigger element.https://f95zone.to/sam/latest_alpha/latest_data.php
by mimicking the site's AJAX request parameters (cmd, cat, page, sort, rows, _).createItemElement
function. This function is critical and aims to replicate the DOM structure of tiles generated by F95zone's own latest.min.js
to ensure compatibility with site features (hover galleries, tooltips).XF.activate(element)
on newly added tiles to trigger XenForo's JavaScript initializations.MutationObserver
watches for content changes in the item container to reset infinite scroll state if filters are applied by the user through the site's UI.offsetWidth
Error from latest.min.js
: You may still encounter a TypeError
related to offsetWidth
in the console when hovering over dynamically loaded items. This occurs if the DOM structure generated by createItemElement
doesn't perfectly match what latest.min.js
expects for its hover effects (like title animation or image galleries). Meticulous comparison and adjustment of createItemElement
are needed to resolve this fully.ERR_BLOCKED_BY_CLIENT
: If you use an ad blocker or privacy extension, it might block images from preview.f95zone.to
. You will need to whitelist this domain in your extension.ERR_HTTP2_PROTOCOL_ERROR
: This is a network-level error and might be due to server issues, your connection, or browser hiccups, generally outside the script's direct control.XF.activate()
is called, not all JavaScript-driven hover effects (especially the image gallery preview built by latest.min.js
) might work perfectly on items loaded by the UserScript if the DOM isn't an exact match or if latest.min.js
doesn't re-bind its specific hover handlers to new elements.createItemElement
is complex as it requires mapping prefix IDs from the JSON data to names and CSS classes (potentially from the site's latestUpdates.prefixes
global variable). This is currently basic in the provided createItemElement
template.createItemElement
DOM structure to eliminate offsetWidth
errors and ensure full compatibility with latest.min.js
hover effects.GM_setValue
and GM_getValue
for user-configurable options (e.g., items per row density, items per AJAX load).Contributions, bug reports, and suggestions are welcome! Please feel free to open an issue or submit a pull request. When reporting bugs, please include:
Happy browsing!