jquery 怎么动态向style元素中添加@keyframes run

jquery 怎么动态向style元素中添加@keyframes run,第1张

//dropCoin 是动画名称。

var dropX = xxx //自定义的值

var dropY = yyy //自定义的值

var style = document.styleSheets[0]

var amt = [

"@keyframes dropCoin {

0% { -webkit-transform: translateY(0px)transform: translateY(0px)}

100% { -webkit-transform: translateY("+dropY+"px)transform: translateY("+dropY+"px)}

}",

]

for(var i = 0i<amt.lengthi++){

style.insertRule(amt[i],i+200) //注意修改200这个值

}

var style = document.styleSheets[0]

console.log(style)

document.styleSheets这个接口可以获取网页上引入style样式表。

拿到样式表后就可以 *** 作样式啦~

insertRule方法用来给当前样式表插入新的样式规则。

insertRule(rule,index)

rule:要添加到样式表的规则。

index:要把规则插入或附加到 cssRules 数组中的位置。

js既然可以添加 @keyframes 样式了,那动态传值就方便啦!

附实战笔记一篇

Fragment是activity的界面中的一部分或一种行为。你可以把多个Fragment们组合到一个activity中来创建一个多面界面,并且你可以在多个activity中重用一个Fragment。你可以把Fragment认为模块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被添加或删除。Fragment不能独立存在,它必须嵌入到activity中,而且Fragment的生命周期直接受所在的activity的影响。例如:当activity暂停时,它拥有的所有的Fragment们都暂停了,当activity销毁时,它拥有的所有Fragment们都被销毁。然而,当activity运行时(在onResume()之后,onPause()之前),你可以单独地 *** 作每个Fragment,比如添加或删除它们。当你在执行上述针对Fragment的事务时,你可以将事务添加到一个栈中,这个栈被activity管理,栈中的每一条都是一个Fragment的一次事务。有了这个栈,就可以反向执行Fragment的事务,这样就可以在Fragment级支持“返回”键(向后导航)。当向activity中添加一个Fragment时,它须置于ViewGroup控件中,并且需定义Fragment自己的界面。你可以在layoutxml文件中声明Fragment,元素为:;也可以在代码中创建Fragment,然后把它加入到ViewGroup控件中。然而,Fragment不一定非要放在activity的界面中,它可以隐藏在后台为actvitiy工作。设计的哲学:为了让界面可以在平板上更好地展示,Android在3.0版本引入了Fragment(碎片)功能,通过官方文档中的这张图片可以很明显地看到Fragment的好处:注:左边为平板,右边为手持设备。二、Fragment的生命周期:因为Fragment必须嵌入在Acitivity中使用,所以Fragment的生命周期和它所在的Activity是密切相关的。如果Activity是暂停状态,其中所有的Fragment都是暂停状态;如果Activity是stopped状态,这个Activity中所有的Fragment都不能被启动;如果Activity被销毁,那么它其中的所有Fragment都会被销毁。但是,当Activity在活动状态,可以独立控制Fragment的状态,比如加上或者移除Fragment。当这样进行fragmenttransaction(转换)的时候,可以把fragment放入Activity的backstack中,这样用户就可以进行返回 *** 作。使用Fragment时,需要继承Fragment或者Fragment的子类(DialogFragment,ListFragment,PreferenceFragment,WebViewFragment),所以Fragment的代码看起来和Activity的类似。每当创建一个Fragment时,首先添加以下三个回调方法:onCreate():系统在创建Fragment的时候调用这个方法,这里应该初始化相关的组件,一些即便是被暂停或者被停止时依然需要保留的东西。onCreateView():当第一次绘制Fragment的UI时系统调用这个方法,该方法将返回一个View,如果Fragment不提供UI也可以返回null。注意,如果继承自ListFragment,onCreateView()默认的实现会返回一个ListView,所以不用自己实现。onPause():当用户离开Fragment时第一个调用这个方法,需要提交一些变化,因为用户很可能不再返回来。将Fragment加载到Activity当中有两种方式:方式一:添加Fragment到Activity的布局文件当中方式二:在Activity的代码中动态添加Fragment第一种方式虽然简单但灵活性不够。添加Fragment到Activity的布局文件当中,就等同于将Fragment及其视图与activity的视图绑定在一起,且在activity的生命周期过程中,无法切换fragment视图。第二种方式比较复杂,但也是唯一一种可以在运行时控制fragment的方式(加载、移除、替换)。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11289877.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存