Skip to content

Commit

Permalink
fix ie67下storage setItem bug
Browse files Browse the repository at this point in the history
  • Loading branch information
RubyLouvre committed Nov 30, 2012
1 parent bc0817b commit 6552afb
Show file tree
Hide file tree
Showing 5 changed files with 121 additions and 140 deletions.
4 changes: 2 additions & 2 deletions event.js
@@ -1,5 +1,5 @@

define("event", ["$node"],function( $ ){//[top.dispatchEvent ? "valueOf": "concat" ]("$event_fix")
define("event", ["$node"][top.dispatchEvent ? "valueOf": "concat" ]("$event_fix"),function( $ ){
$.log("已加载event模块v9");
var facade = $.event || ($.event = {
special: {}
Expand Down Expand Up @@ -123,7 +123,7 @@ define("event", ["$node"],function( $ ){//[top.dispatchEvent ? "valueOf": "conca
types = hash.type, //原有的事件类型,可能是复数个
selector = hash.selector, //是否使用事件代理
handler = hash.handler; //回调函数
$.log(hash)

if ( elem.nodeType === 3 || elem.nodeType === 8 || !types || !handler || !elemData ) {
return;
}
Expand Down
226 changes: 103 additions & 123 deletions index.html
Expand Up @@ -4,156 +4,136 @@
<title>sample by 司徒正美</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="mm_menu.css" media="screen">
<!-- <script src="jquery1.83.js">
<script src="massv20.js">

</script>
<script src="menu.js">
</script>
<!-- <script src="menu.js">
</script>
<script >
$(function(){
$('ul.sf-menu').superfish();
});
</script>-->
<script >
require("event, node, attr,menu",function($){
$('ul.sf-menu').superfish();
});

</script>-->
<style>
#click {
width:100px;
height:100px;
background: red;
}
</style>
<script src="mass.js">

</script>
<script>
require("eventv9, ready", function($){
$("body").delegate("#click","click", function(e){
console.log("ooooooooooooooooo")
$.log("cccccccccc")
$.log(e)
})
})
</script>



</head>
<body>
<div id="click">

</div>
<!-- <ul class="sf-menu">
<ul class="sf-menu">
<li class="current">
<a href="#a">menu item</a>
<ul>
<li>
<a href="#aa">menu item that is quite long</a>
</li>
<li class="current">
<a href="#a">menu item</a>
<a href="#ab">XXXXX</a>
<ul>
<li class="current"><a href="#">menu item</a></li>
<li><a href="#aba">menu item</a></li>
<li><a href="#abb">menu item</a></li>
<li><a href="#abc">menu item</a></li>
<li><a href="#abd">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li>
<a href="#aa">menu item that is quite long</a>
</li>
<li class="current">
<a href="#ab">XXXXX</a>
<ul>
<li class="current"><a href="#">menu item</a></li>
<li><a href="#aba">menu item</a></li>
<li><a href="#abb">menu item</a></li>
<li><a href="#abc">menu item</a></li>
<li><a href="#abd">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li>
<a href="#">menu item</a>
<ul>
<li class="current"><a href="#">menu item</a></li>
<li><a href="#aba">4444444</a></li>
<li><a href="#aba">4444444</a></li>
<li><a href="#aba">4444444</a></li>
<li><a href="#abd">4444444</a></li>
<li><a href="#abd">4444444</a></li>
<li><a href="#abd">4444444</a></li>
</ul>
</li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li class="current"><a href="#">menu item</a></li>
<li><a href="#aba">4444444</a></li>
<li><a href="#aba">4444444</a></li>
<li><a href="#aba">4444444</a></li>

<li><a href="#abd">4444444</a></li>
<li><a href="#abd">4444444</a></li>
<li><a href="#abd">4444444</a></li>
</ul>
</li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
</ul>
</li>
<li>
<a href="#">menu item</a>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li>
<a href="#">menu item</a>
<ul>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">short</a></li>
<li><a href="#">short</a></li>
<li><a href="#">short</a></li>
<li><a href="#">short</a></li>
<li><a href="#">short</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
<li><a href="#">short</a></li>
<li><a href="#">short</a></li>
<li><a href="#">short</a></li>
<li><a href="#">short</a></li>
<li><a href="#">short</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
<li>
<a href="#">menu item</a>
<ul>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
<li><a href="#">menu item</a></li>
</ul>
</li>
</ul>-->
</ul>
</li>
<li>
<a href="#">menu item</a>
</li>
</ul>

</body>
</html>
Expand Down
4 changes: 2 additions & 2 deletions mass.js
Expand Up @@ -399,7 +399,7 @@
function curry(fn) {
return function(a, b) {
HTML.load("massdata");
a = String(a).replace(rstoragekey, function(w){
a = "_"+String(a).replace(rstoragekey, function(w){
return w.charCodeAt(0);
})
var result = fn( a, b );
Expand Down Expand Up @@ -467,7 +467,7 @@
}
function loadStorage( id ){
var factory = Storage.getItem( id);
if(factory && !modules[id]){
if( $.config.storage && factory && !modules[id]){
var parent = Storage.getItem(id+"_parent");
var deps = Storage.getItem(id+"_deps");
deps = deps ? deps.match( $.rword ) : "";
Expand Down
15 changes: 7 additions & 8 deletions massv20.js
Expand Up @@ -370,8 +370,8 @@
//===============================================================
var Storage = $.oneObject("setItem,getItem,removeItem,clear",$.noop);
if( global.localStorage){
Storage = localStorage;
}else if( HTML.addBehavior){
Storage = localStorage;
}else if( HTML.addBehavior){
HTML.addBehavior('#default#userData');
HTML.save("massdata");
//https://github.com/marcuswestin/store.js/issues/40#issuecomment-4617842
Expand All @@ -380,9 +380,9 @@
function curry(fn) {
return function(a, b) {
HTML.load("massdata");
a = String(a).replace(rstoragekey, function(w){
a = "_" + String(a).replace(rstoragekey, function(w){
return w.charCodeAt(0);
})
});
var result = fn( a, b );
HTML.save("massdata");
return result
Expand Down Expand Up @@ -511,7 +511,6 @@
args.unshift([])
}
args.push(loading)
$.log(loading+"!!!!!!!")
if($._checkCycle(modules[loading].deps, loading)){
throw new Error( loading +"模块与之前的某些模块存在循环依赖")
}
Expand All @@ -523,15 +522,15 @@
Storage.setItem( loading+"_version", new Date - 0);
}
require.apply(null, args); //0,1,2 --> 1,2,0
$.log(args)

if(loading = waitings.shift()){
loadJS()
}
}
define.amd = modules
function loadStorage( id ){
var factory = Storage.getItem( id);
if(factory && !modules[id]){
var factory = Storage.getItem( id );
if( $.config.storage && factory && !modules[id]){
var parent = Storage.getItem(id+"_parent");
var deps = Storage.getItem(id+"_deps");
deps = deps ? deps.match( $.rword ) : "";
Expand Down
12 changes: 7 additions & 5 deletions menu.js
@@ -1,11 +1,11 @@
//define("menu", ["node","attr","css","event"], function($){
;(function($){
define("menu", ["node","attr","css","event"], function($){

$.fn.superfish = function(op){

var sf = $.fn.superfish, c = sf.c,
$arrow = '<span class="'+c.arrowClass+'"> &#187;</span>'
var o = $.extend({},sf.defaults,op);
// var o = $.Object.merge({}, sf.defaults,op || {});

var o = $.Object.merge({}, sf.defaults,op || {});
this.addClass(c.menuClass).find('li:has(ul)').each(function() {
if (o.autoArrows) {
$('>a:first-child',this).addClass(c.anchorClass).append($arrow);
Expand All @@ -16,9 +16,11 @@
var $$ = $(this)
$$.addClass(o.hoverClass).find("li."+o.hoverClass).removeClass(o.hoverClass)
$$.siblings().removeClass(o.hoverClass)
o.onShow(this)
}).mouseleave(function(){
var $$ = $(this)
$$.removeClass(o.hoverClass)//.parents( 'li.' +o.hoverClass ).removeClass(o.hoverClass)
o.onHide(this)
})


Expand Down Expand Up @@ -57,4 +59,4 @@
};

return $;
})(jQuery)
})

0 comments on commit 6552afb

Please sign in to comment.