ไลบรารีแอนิเมชั่น JavaScript ที่ง่ายและมีน้ำหนักเบาสุด ๆ
ANIX เป็นห้องสมุดแอนิเมชั่นที่มีน้ำหนักเบาและใช้งานง่ายพร้อมประสิทธิภาพที่ยอดเยี่ยมและเข้ากันได้ดีสำหรับเบราว์เซอร์ที่ทันสมัย
มันใช้แอตทริบิวต์ การเปลี่ยน CSS ดั้งเดิมดีกว่าประสิทธิภาพการเคลื่อนไหวของ JS Simulation และคุณยังสามารถเปิดใช้งานการเร่งฮาร์ดแวร์ด้วย
ANIX น้อยกว่า 3K (GZIP) ขนาด มันประสบความสำเร็จเกือบจะเหมือนกันกับห้องสมุดแอนิเมชั่นขนาดใหญ่อื่น ๆ
ดูตัวอย่างโปรดคลิกที่นี่
$ npm install anix --save-dev
...
import { AniX } from ' anix ' ;
< script src =" ./js/anix.umd.ts " type =" text/javascript " > </ script >
< script src =" ./js/jquery.min.js " type =" text/javascript " > </ script >
< script src =" ./js/anix.jq.js " type =" text/javascript " > </ script >
AniX . to ( dom , 1 , {
x : 300 ,
y : 10 ,
scale : 2 ,
delay : 0.5 ,
onComplete : function ( ) {
alert ( 'over' ) ;
} ,
} ) ;
// or
AniX . to ( dom , 1 , {
width : '200px' ,
'background-color' : '#ffcc00' ,
ease : AniX . ease . easeOutBack ,
onComplete : ( ) => {
//STATE : COMPLETED!
console . log ( 'STATE : COMPLETED!' ) ;
} ,
} ) ;
$ ( '.demo' )
. css ( { left : '0px' } )
. to ( 0.5 , {
left : '500px' ,
'background-color' : '#ffcc00' ,
} ) ;
class MyComponent extends React . Component {
constructor ( props ) {
super ( props ) ;
this . myRef = React . createRef ( ) ;
this . clickHandler = this . clickHandler . bind ( this ) ;
}
clickHandler ( e ) {
const node = this . myRef . current ;
// animation
AniX . to ( node , 1 , {
x : 300 ,
y : 10 ,
scale : 2 ,
} ) ;
}
render ( ) {
return (
< div >
< div ref = { this . myRef } / >
< button onClick = { this . clickHandler } > < / button >
< / div >
) ;
}
}
มีไลบรารีแอนิเมชั่นจำนวนมากทำไมต้องใช้ ANIX?
ก่อนอื่นมันมีขนาดเล็กมากและ 3KB (GZIP) เหมาะสำหรับใช้ในหน้ามือถือ (เนื่องจากมีความต้องการขนาด)
ประการที่สอง ANIX ใช้คุณสมบัติแอนิเมชั่น CSS ดั้งเดิมโดยตรงซึ่งมีประสิทธิภาพสูงมาก
ความเข้ากันได้ดีหลังจากการทดสอบเครื่องจักรจริงจำนวนมากประสิทธิภาพที่ดี รวมถึงอุปกรณ์ Android ที่หลากหลาย
//like AniX.to
$ ( . . ) . to ( time : number , args : { ease ?: string ; delay ?: number ; [ propName : string ] : any ; } )
//like AniX.fromTo
$ ( . . ) . fromTo ( time : number , fromArgs : Object , toArgs : Object )
//like AniX.kill
$ ( . . ) . kill ( complete ?: boolean )
//like AniX.get
$ ( . . ) . getTransform ( param : any )
//like AniX.ease
$ . ease . easeOut
git clone [email protected]:adajuly/AniX.git
npm install
npm run all
npm run jq
npm run umd
cd ./example
npm install
npm start
npm run build
จากนั้นเปิด http: // localhost: 3000/
ดู ./test/test.html
แน่นอนว่ามีเวอร์ชั่นอื่น ๆ ที่นี่ไม่จำเป็น เวอร์ชันตอบสนองและเวอร์ชัน Vue ...
ใบอนุญาต MIT