修复主题一些细节优化问题
This commit is contained in:
1 parent
578bac0e12
commit
a8f49d8651
24 files changed
+645
-67
No files matched your search
@@ -32,6 +32,9 @@ document.addEventListener('DOMContentLoaded', function() {
|
||||
|
||||
// Initialize Typewriter Effect for Mobile Header
|
||||
initTypewriter();
|
||||
|
||||
// Image frame scroll reveal
|
||||
initImageFrameReveal();
|
||||
});
|
||||
|
||||
/**
|
||||
@@ -71,3 +74,42 @@ function initTypewriter() {
|
||||
// Start typing with a small delay
|
||||
setTimeout(typeWriter, 500);
|
||||
}
|
||||
|
||||
/**
|
||||
* Scroll-triggered reveal for sen-image-frame
|
||||
*/
|
||||
var senFrameObserver = null;
|
||||
|
||||
function initImageFrameReveal() {
|
||||
var frames = document.querySelectorAll('.sen-image-frame');
|
||||
if (!frames.length) return;
|
||||
|
||||
if (!window.IntersectionObserver) {
|
||||
frames.forEach(function(frame) {
|
||||
frame.classList.add('is-visible');
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
if (senFrameObserver) {
|
||||
senFrameObserver.disconnect();
|
||||
}
|
||||
|
||||
senFrameObserver = new IntersectionObserver(function(entries) {
|
||||
entries.forEach(function(entry) {
|
||||
if (entry.isIntersecting) {
|
||||
entry.target.classList.add('is-visible');
|
||||
senFrameObserver.unobserve(entry.target);
|
||||
}
|
||||
});
|
||||
}, {
|
||||
rootMargin: "0px 0px 50px 0px",
|
||||
threshold: 0.08
|
||||
});
|
||||
|
||||
frames.forEach(function(frame) {
|
||||
senFrameObserver.observe(frame);
|
||||
});
|
||||
}
|
||||
|
||||
window.initImageFrameReveal = initImageFrameReveal;
|
||||
@@ -152,5 +152,12 @@ document.addEventListener("pjax:complete", function () {
|
||||
} catch(e) { console.error('initSearch error:', e); }
|
||||
}
|
||||
|
||||
// 重载图片框架滚动显示
|
||||
if (typeof window.initImageFrameReveal === 'function') {
|
||||
try {
|
||||
window.initImageFrameReveal();
|
||||
} catch(e) { console.error('initImageFrameReveal error:', e); }
|
||||
}
|
||||
|
||||
refreshHeatmap();
|
||||
});
|
||||
Reference in new issue
Block a user