欢迎访问 生活随笔!

ag凯发k8国际

当前位置: ag凯发k8国际 > 编程资源 > 编程问答 >内容正文

编程问答

html引入avalon,avalon中文文档 -ag凯发k8国际

发布时间:2024/10/14 编程问答 11 豆豆
ag凯发k8国际 收集整理的这篇文章主要介绍了 html引入avalon,avalon中文文档 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

数据缓存(ms-data-*)

jquery的许多功能都可以通过avalon的绑定属性来处理,如click方法对应ms-click,

css方法对应ms-css,toggle方法对应ms-visible,它的数据缓存功能avalon也搬过来了。

但不同于jquery的是,avalon是直接将数据保存到元素节点的html5的data-*属性上。

在从data-*属性还原数据时,它会简单的数据转换,再返回给你。

在ms-data绑定中,考虑到如果将对象转换为字符串再还原会丢失函数什么的,因此它们会直接保存到元素之上。

todo supply a title

avalon.define({

$id: "test",

$skiparray: ["array", "object"],

number: 111,

number2: nan,

bool: false,

bool2: true,

nn: null,

vv: void 0,

array: [1, 2, 3],

date: new date,

object: {

name: "这是数据"

},

show: function() {

var elem = avalon(this)

console.log(

elem.data("number"), elem.data("number2"),

elem.data("bool"), elem.data("bool2"),

elem.data("null"), elem.data("void"),

elem.data("fn"), this["data-array"],

this["data-date"], this["data-object"]

)

}

})

点我

这是一个很简单的绑定,没什么好说的,只要记住对象与数组是直接保存在元素节点上就行了。下面是它的源码:

//1.3.8的源码

// bindinghandlers.data 定义在if.js

bindingexecutors.data = function(val, elem, data) {

var key = "data-" data.param

if (val && typeof val === "object") {

elem[key] = val

} else {

elem.setattribute(key, string(val))

}

}

总结

以上是ag凯发k8国际为你收集整理的html引入avalon,avalon中文文档的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得ag凯发k8国际网站内容还不错,欢迎将ag凯发k8国际推荐给好友。

网站地图