feat: douban api

This commit is contained in:
shinya
2025-06-18 12:54:16 +08:00
parent 9c16d5636c
commit a1bf1839ea
6 changed files with 211 additions and 21 deletions

View File

@@ -67,7 +67,13 @@ const DemoCard = ({ title, poster }: DemoCardProps) => {
>
{/* 海报图片 - 2:3 比例 */}
<div className='relative aspect-[2/3] w-full overflow-hidden'>
<Image src={poster} alt={title} fill className='object-cover' />
<Image
src={poster}
alt={title}
fill
className='object-cover'
referrerPolicy='no-referrer'
/>
{/* Hover 效果 */}
<div className='absolute inset-0 bg-black/40 opacity-0 group-hover:opacity-100 transition-opacity duration-200 flex items-center justify-center group'>
<div className='absolute inset-0 flex items-center justify-center'>

View File

@@ -70,13 +70,13 @@ export default function ScrollableRow({ children }: ScrollableRowProps) {
const handleScrollRightClick = () => {
if (containerRef.current) {
containerRef.current.scrollBy({ left: 800, behavior: 'smooth' });
containerRef.current.scrollBy({ left: 1000, behavior: 'smooth' });
}
};
const handleScrollLeftClick = () => {
if (containerRef.current) {
containerRef.current.scrollBy({ left: -800, behavior: 'smooth' });
containerRef.current.scrollBy({ left: -1000, behavior: 'smooth' });
}
};
@@ -112,7 +112,7 @@ export default function ScrollableRow({ children }: ScrollableRowProps) {
/>
<div
className='absolute inset-0 flex items-center justify-center'
style={{ top: '40%', bottom: '60%' }}
style={{ top: '40%', bottom: '60%', left: '-4.5rem' }}
>
<button
onClick={handleScrollLeftClick}
@@ -139,7 +139,7 @@ export default function ScrollableRow({ children }: ScrollableRowProps) {
/>
<div
className='absolute inset-0 flex items-center justify-center'
style={{ top: '40%', bottom: '60%' }}
style={{ top: '40%', bottom: '60%', right: '-4.5rem' }}
>
<button
onClick={handleScrollRightClick}