Skip to content

Commit

Permalink
不再允许别人改绑定属性的前缀
Browse files Browse the repository at this point in the history
  • Loading branch information
qincheng committed Oct 2, 2014
1 parent 7aa5aab commit d4aee76
Showing 1 changed file with 9 additions and 9 deletions.
18 changes: 9 additions & 9 deletions examples/avalon.$events.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
/*********************************************************************
* 全局变量及方法 *
**********************************************************************/
var prefix = "ms-"
var expose = new Date - 0
var subscribers = "$" + expose
//http://addyosmani.com/blog/understanding-mvvm-a-guide-for-javascript-developers/
Expand Down Expand Up @@ -1843,7 +1842,8 @@
for (var i = list.length, fn; fn = list[--i]; ) {
var el = fn.element
if (el) {
var remove = !avalon.contains(root, el)
var remove = typeof el.sourceIndex === "number" ?
el.sourceIndex == 0 : !avalon.contains(root, el)
}
if (remove) { //如果它没有在DOM树
var removed = list.splice(i, 1)
Expand Down Expand Up @@ -1896,13 +1896,13 @@
function scanTag(elem, vmodels, node) {
//扫描顺序 ms-skip(0) --> ms-important(1) --> ms-controller(2) --> ms-if(10) --> ms-repeat(100)
//--> ms-if-loop(110) --> ms-attr(970) ...--> ms-each(1400)-->ms-with(1500)--〉ms-duplex(2000)垫后
var a = elem.getAttribute(prefix + "skip")
var a = elem.getAttribute("ms-skip")
//#360 在旧式IE中 Object标签在引入Flash等资源时,可能出现没有getAttributeNode,innerHTML的情形
if (!elem.getAttributeNode) {
return log("warning " + elem.tagName + " no getAttributeNode method")
}
var b = elem.getAttributeNode(prefix + "important")
var c = elem.getAttributeNode(prefix + "controller")
var b = elem.getAttributeNode("ms-important")
var c = elem.getAttributeNode("ms-controller")
if (typeof a === "string") {
return
} else if (node = b || c) {
Expand Down Expand Up @@ -2290,7 +2290,7 @@
/*添加赋值语句*/
function addAssign(vars, scope, name, data) {
var ret = [],
prefix = " =" + name + "."
prefix = " = " + name + "."
for (var i = vars.length, path; path = vars[--i]; ) {
var arr = path.split(".")
var flag = inObject(scope, arr)
Expand Down Expand Up @@ -2475,9 +2475,9 @@
parseExpr(code, scopes, data)
if (data.evaluator) {
data.handler = bindingExecutors[data.handlerName || data.type]
// data.evaluator.toString = function() {
// return data.type + " binding to eval(" + code + ")"
// }
data.evaluator.toString = function() {
return data.type + " binding to eval(" + code + ")"
}
//方便调试
//这里非常重要,我们通过判定视图刷新函数的element是否在DOM树决定
//将它移出订阅者列表
Expand Down

0 comments on commit d4aee76

Please sign in to comment.