Changeset 30463

Show
Ignore:
Timestamp:
02/23/09 22:15:00 (4 years ago)
Author:
kyo_ago
Message:

前よりは直った気がする

Location:
lang/javascript/sisso
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • lang/javascript/sisso/sisso.js

    r30358 r30463  
    55 * Dual licensed under the MIT <http://www.opensource.org/licenses/mit-license.php> 
    66 * and GPL <http://www.opensource.org/licenses/gpl-license.php> licenses. 
    7  * Date: 2009-02-20 
     7 * Date: 2009-02-23 
    88 * @author kyo_ago <http://tech.kayac.com/archive/iepngfix-library-sisso-js.html> 
    9  * @version 1.0.7 
     9 * @version 1.0.8 
    1010 * 
    1111 * thanks from 
     
    121121                self.bind(elem, 'mouseover', (function (target) { 
    122122                        return function () { 
    123                                 $.data(target, name_space, 'src'); 
    124123                                target.src = over; 
    125                                 $.removeData(target); 
    126124                        }; 
    127125                })(elem)); 
    128126                self.bind(elem, 'mouseout', (function (target) { 
    129127                        return function () { 
    130                                 $.data(target, name_space, 'src'); 
    131128                                target.src = src; 
    132                                 $.removeData(target); 
    133129                        }; 
    134130                })(elem)); 
     
    139135                self.bind(elem, 'mouseover', (function (target) { 
    140136                                return function () { 
    141                                 $.data(target, name_space, 'style.backgroundImage'); 
    142137                                target.style.backgroundImage = 'url(' + over + ')'; 
    143                                 $.removeData(target); 
    144138                        }; 
    145139                })(elem)); 
    146140                self.bind(elem, 'mouseout', (function (target) { 
    147141                        return function () { 
    148                                 $.data(target, name_space, 'style.backgroundImage'); 
    149142                                target.style.backgroundImage = 'url(' + src + ')'; 
    150                                 $.removeData(target); 
    151143                        }; 
    152144                })(elem)); 
     
    251243 
    252244                function propertychange () { 
    253                         if (window.jQuery) { 
    254                                 var target = this; 
    255                                 var propertyName = $.data(target, name_space); 
    256                         } else { 
    257                                 var env = window.event; 
    258                                 var target = env.srcElement; 
    259                                 var propertyName = env.propertyName; 
    260                         }; 
     245                        var env = window.event; 
     246                        var target = env.srcElement; 
     247                        if (window.jQuery) target = this; 
    261248                        var tmp = propertychange; 
    262249                        propertychange = function () {}; 
    263250                        new function () { 
    264                                 if (propertyName === 'src') { 
    265                                         if (!target.src || target.src === self.blankUrl) return; 
     251                                if (target.src) { 
     252                                        if (target.src === self.blankUrl) return; 
    266253                                        self.swap(target, target.src); 
    267254                                        target[self.eid] = target.src; 
     
    269256                                        return; 
    270257                                } 
    271                                 if (propertyName !== 'style.backgroundImage') return; 
    272258                                var src = self.get_src(target); 
    273259                                if (!src) return; 
  • lang/javascript/sisso/sisso.min.js

    r30358 r30463  
    55 * Dual licensed under the MIT <http://www.opensource.org/licenses/mit-license.php> 
    66 * and GPL <http://www.opensource.org/licenses/gpl-license.php> licenses. 
    7  * Date: 2009-02-20 
     7 * Date: 2009-02-23 
    88 * @author kyo_ago <http://tech.kayac.com/archive/iepngfix-library-sisso-js.html> 
    9  * @version 1.0.7 
     9 * @version 1.0.8 
    1010 * 
    1111 * thanks from 
     
    1717 */ 
    1818 
    19 ;new function(){var d="Sisso";var b=window[d]||{};window[d]=b;var a,f=window.jQuery;if(!window.jQuery){e();f=function(){};f.data=function(){};f.removeData=function(){};b.Event=a}var c=document;new function(){var o=c.getElementsByTagName("script");var k=new RegExp(d+"\\.js");var h=o.length;while(h--){if(!k.test(o[h].src.toLowerCase())){continue}var m=o[h].src.split("#");if(m.length===1){return}var n=m.pop().split(/[&;]+/);var g=n.length;while(g--){var l=n[g].split("=");b[l[0]]=l[1]}return}};b.blankUrl=b.blankUrl||"http://tech.kayac.com/data/iepngfix-library-sisso-js/blank.gif";b.overClass=b.overClass||"btn";b.externalClass=b.externalClass||"external";b.breakAllClass=b.breakAllClass||"wordBreak";b.noRoll=b.noRoll||false;b.noFix=b.noFix||false;b.noExternal=b.noExternal||false;b.noBreakAll=b.noBreakAll||false;b.get_elems=(function(){if(c.getElementsByClassName){return function(g){return c.getElementsByClassName(g)}}if(c.querySelectorAll){return function(g){return c.querySelectorAll("*."+g)}}if(c.evaluate){return function(k){var j=c.evaluate("descendant::*[@class="+k+" or contains(concat(' ', @class, ' '), ' "+k+" ')]",c,null,7,null);var g=[];for(var m=0,h=j.snapshotLength;m<h;g.push(j.snapshotItem(m++))){}return g}}return function(k){var n=new RegExp("(?:^|[ \\n\\r\\t])"+k+"(?:[ \\n\\r\\t]|$)");var j=c.body.getElementsByTagName("*");var g=[];for(var m=0,h=j.length;m<h;++m){var o=j[m];if(o.className.indexOf(k)===-1){continue}if(!n.test(o.className)){continue}g.push(o)}return g}})();b.get_src=function(g){if(g.src){return g.src}src=(g.currentStyle||c.defaultView.getComputedStyle(g,"")).backgroundImage;return(src.match(/^url\((["']?)(.*\.png)\1\)$/i)||[undefined]).pop()};b.hover=function(g){var i=b.get_src(g);var h=b.replace_over(i);return g.src?b.add_src_over(g,i,h):b.add_bg_over(g,i,h)};b.replace_over=function(g){return g.replace(/(?:_o)?(\.\w+)$/,"_o$1")};new function(){b.bind=window.jQuery?g:window.addEventListener?i:h;function g(l,j,k){f(l).bind(j+"."+d,k)}function i(l,j,k){l.addEventListener(j,k,false)}function h(l,j,k){l.attachEvent("on"+j,k)}};b.add_src_over=function(h,j,i){var g=new Image();g.src=i;b.bind(h,"mouseover",(function(k){return function(){f.data(k,d,"src");k.src=i;f.removeData(k)}})(h));b.bind(h,"mouseout",(function(k){return function(){f.data(k,d,"src");k.src=j;f.removeData(k)}})(h))};b.add_bg_over=function(g,i,h){(new Image()).src=h;b.bind(g,"mouseover",(function(j){return function(){f.data(j,d,"style.backgroundImage");j.style.backgroundImage="url("+h+")";f.removeData(j)}})(g));b.bind(g,"mouseout",(function(j){return function(){f.data(j,d,"style.backgroundImage");j.style.backgroundImage="url("+i+")";f.removeData(j)}})(g))};b.exec_hover=function(){b.bind(window,"load",function(){var h=b.get_elems(b.overClass);for(var j=0,g=h.length;j<g;b.hover(h[j++])){}})};b.exec_external=function(){b.bind(window,"load",function(){var h=b.get_elems(b.externalClass);for(var j=0,g=h.length;j<g;h[j++].target="_blank"){}})};b.exec_break_all=function(){var j=navigator.userAgent;var i=j.indexOf(" Gecko/")!==-1&&j.indexOf("; rv:1.8.1")!==-1?"<wbr/>":String.fromCharCode(8203);var h=function(o){var l=o.childNodes;var m=[];var p=0;var q=l.length;while(p<q){m[p]=l[p++]}for(p=0,q=m.length;p<q;++p){var s=m[p];if(s.nodeType===1){if(s.childNodes&&s.childNodes.length){arguments.callee(s)}continue}var n=s.nodeValue;if(!n||/^[ \n\r\t]*$/.test(n)){continue}var k=c.createElement("div");k.innerHTML=n.split("").join(i);var r=s.parentNode;while(k.firstChild){r.insertBefore(k.removeChild(k.firstChild),s)}r.removeChild(s)}};if(j.indexOf("Mozilla/4.0 (compatible; MSIE ")===0&&j.toLowerCase().indexOf("opera")===-1){h=function(k){k.style.wordBreak="break-all"}}var g=function(){var m=b.get_elems(b.breakAllClass);for(var n=0,k=m.length;n<k;h(m[n++])){}};window.jQuery?f(g):a.domReady.add(g)};if(!b.noExternal){b.exec_external()}if(!b.noBreakAll){b.exec_break_all()}if(!/^Mozilla\/4\.0 \(compatible; MSIE (?:5\.5|[67]\.)/.test(navigator.userAgent)){if(!b.noRoll){b.exec_hover()}return}b.eid="_"+d+"_src";b.store=function(g,h){return h?g[b.eid]=h:g[b.eid]};b.hover=function(g){var i=g[b.eid]||(g[b.eid]=b.get_src(g));var h=b.replace_over(i);return g.src?b.add_src_over(g,i,h):b.add_bg_over(g,i,h)};b.set_width=function(g){var h=g.currentStyle;if(h.width!=="auto"||h.height!=="auto"){return}g.style.width=g.offsetWidth+"px"};b.fix=function(g){g.runtimeStyle.behavior="none";var i=g[b.eid]||(g[b.eid]=b.get_src(g));if(!i){i=g.src}if(!i||!/\.png$/.test(i.toLowerCase())){return}b.set_width(g);if(g.src){g.src=b.blankUrl}if(!g.style.zoom&&g.style.zoom!=="0"){g.style.zoom=1}b.swap(g,i);if(!g.src){b.fix_bg_elem(g)}b.bind(g,"propertychange",function(){h.apply(this,arguments)});function h(){if(window.jQuery){var m=this;var j=f.data(m,d)}else{var l=window.event;var m=l.srcElement;var j=l.propertyName}var k=h;h=function(){};new function(){if(j==="src"){if(!m.src||m.src===b.blankUrl){return}b.swap(m,m.src);m[b.eid]=m.src;m.src=b.blankUrl;return}if(j!=="style.backgroundImage"){return}var n=b.get_src(m);if(!n){return}b.swap(m,n);m.style.backgroundImage="none";m[b.eid]=n};h=k}};b.fix_bg_elem=function(g){g.style.backgroundImage="none";b.set_pos(g);(g.tagName.toUpperCase()==="A")&&(g.style.cursor=g.style.cursor||"pointer")};b.set_pos=function(h){var g=["input","textarea","select"];var i=function(j,n){for(var k=j.length,m;m=j[--k];){var l=m.style;!l.position&&(l.position="relative");if(!n){continue}!l.cursor&&(l.cursor=n)}};while(g.length){i(h.getElementsByTagName(g.pop()))}i(h.getElementsByTagName("a"),"pointer")};b.swap=function(h,j){if(j===b.blankUrl){return}var g=(h.currentStyle.backgroundRepeat==="no-repeat")?"crop":"scale";var i="DXImageTransform.Microsoft.AlphaImageLoader";if(h.filters.length&&i in h.filters){h.filters[i].enabled=1;h.filters[i].src=j;return}h.style.filter="progid:"+i+'(src="'+j+'",sizingMethod="'+g+'");'};b.exec_pngfix=function(){var g="expression("+d+".fix(this));";var h=c.createElement("div");h.innerHTML=(['div<div><style type="text/css">',"img, input { behavior : "+g+" };",".bgpng { behavior : "+g+" };","</style></div>"]).join("");c.getElementsByTagName("head")[0].appendChild(h.getElementsByTagName("style")[0])};if(!b.noRoll){b.exec_hover()}if(!b.noFix){b.exec_pngfix()}function e(){if(typeof a=="undefined"){a=new Object()}a.domReady={add:function(g){if(a.domReady.loaded){return g()}var i=a.domReady.observers;if(!i){i=a.domReady.observers=[]}i[i.length]=g;if(a.domReady.callback){return}a.domReady.callback=function(){if(a.domReady.loaded){return}a.domReady.loaded=true;if(a.domReady.timer){clearInterval(a.domReady.timer);a.domReady.timer=null}var l=a.domReady.observers;for(var o=0,m=l.length;o<m;o++){var n=l[o];l[o]=null;n()}a.domReady.callback=a.domReady.observers=null};var j=!!(window.attachEvent&&!window.opera);var h=navigator.userAgent.indexOf("AppleWebKit/")>-1;if(document.readyState&&h){a.domReady.timer=setInterval(function(){var l=document.readyState;if(l=="loaded"||l=="complete"){a.domReady.callback()}},50)}else{if(document.readyState&&j){var k=(window.location.protocol=="https:")?"://0":"javascript:void(0)";document.write('<script type="text/javascript" defer="defer" src="'+k+"\" onreadystatechange=\"if (this.readyState == 'complete') "+d+'.Event.domReady.callback();"><\/script>')}else{if(window.addEventListener){document.addEventListener("DOMContentLoaded",a.domReady.callback,false);window.addEventListener("load",a.domReady.callback,false)}else{if(window.attachEvent){window.attachEvent("onload",a.domReady.callback)}else{var g=window.onload;window.onload=function(){a.domReady.callback();if(g){g()}}}}}}}}}}; 
     19;new function(){var d="Sisso";var b=window[d]||{};window[d]=b;var a,f=window.jQuery;if(!window.jQuery){e();f=function(){};f.data=function(){};f.removeData=function(){};b.Event=a}var c=document;new function(){var o=c.getElementsByTagName("script");var k=new RegExp(d+"\\.js");var h=o.length;while(h--){if(!k.test(o[h].src.toLowerCase())){continue}var m=o[h].src.split("#");if(m.length===1){return}var n=m.pop().split(/[&;]+/);var g=n.length;while(g--){var l=n[g].split("=");b[l[0]]=l[1]}return}};b.blankUrl=b.blankUrl||"http://tech.kayac.com/data/iepngfix-library-sisso-js/blank.gif";b.overClass=b.overClass||"btn";b.externalClass=b.externalClass||"external";b.breakAllClass=b.breakAllClass||"wordBreak";b.noRoll=b.noRoll||false;b.noFix=b.noFix||false;b.noExternal=b.noExternal||false;b.noBreakAll=b.noBreakAll||false;b.get_elems=(function(){if(c.getElementsByClassName){return function(g){return c.getElementsByClassName(g)}}if(c.querySelectorAll){return function(g){return c.querySelectorAll("*."+g)}}if(c.evaluate){return function(k){var j=c.evaluate("descendant::*[@class="+k+" or contains(concat(' ', @class, ' '), ' "+k+" ')]",c,null,7,null);var g=[];for(var m=0,h=j.snapshotLength;m<h;g.push(j.snapshotItem(m++))){}return g}}return function(k){var n=new RegExp("(?:^|[ \\n\\r\\t])"+k+"(?:[ \\n\\r\\t]|$)");var j=c.body.getElementsByTagName("*");var g=[];for(var m=0,h=j.length;m<h;++m){var o=j[m];if(o.className.indexOf(k)===-1){continue}if(!n.test(o.className)){continue}g.push(o)}return g}})();b.get_src=function(g){if(g.src){return g.src}src=(g.currentStyle||c.defaultView.getComputedStyle(g,"")).backgroundImage;return(src.match(/^url\((["']?)(.*\.png)\1\)$/i)||[undefined]).pop()};b.hover=function(g){var i=b.get_src(g);var h=b.replace_over(i);return g.src?b.add_src_over(g,i,h):b.add_bg_over(g,i,h)};b.replace_over=function(g){return g.replace(/(?:_o)?(\.\w+)$/,"_o$1")};new function(){b.bind=window.jQuery?g:window.addEventListener?i:h;function g(l,j,k){f(l).bind(j+"."+d,k)}function i(l,j,k){l.addEventListener(j,k,false)}function h(l,j,k){l.attachEvent("on"+j,k)}};b.add_src_over=function(h,j,i){var g=new Image();g.src=i;b.bind(h,"mouseover",(function(k){return function(){k.src=i}})(h));b.bind(h,"mouseout",(function(k){return function(){k.src=j}})(h))};b.add_bg_over=function(g,i,h){(new Image()).src=h;b.bind(g,"mouseover",(function(j){return function(){j.style.backgroundImage="url("+h+")"}})(g));b.bind(g,"mouseout",(function(j){return function(){j.style.backgroundImage="url("+i+")"}})(g))};b.exec_hover=function(){b.bind(window,"load",function(){var h=b.get_elems(b.overClass);for(var j=0,g=h.length;j<g;b.hover(h[j++])){}})};b.exec_external=function(){b.bind(window,"load",function(){var h=b.get_elems(b.externalClass);for(var j=0,g=h.length;j<g;h[j++].target="_blank"){}})};b.exec_break_all=function(){var j=navigator.userAgent;var i=j.indexOf(" Gecko/")!==-1&&j.indexOf("; rv:1.8.1")!==-1?"<wbr/>":String.fromCharCode(8203);var h=function(o){var l=o.childNodes;var m=[];var p=0;var q=l.length;while(p<q){m[p]=l[p++]}for(p=0,q=m.length;p<q;++p){var s=m[p];if(s.nodeType===1){if(s.childNodes&&s.childNodes.length){arguments.callee(s)}continue}var n=s.nodeValue;if(!n||/^[ \n\r\t]*$/.test(n)){continue}var k=c.createElement("div");k.innerHTML=n.split("").join(i);var r=s.parentNode;while(k.firstChild){r.insertBefore(k.removeChild(k.firstChild),s)}r.removeChild(s)}};if(j.indexOf("Mozilla/4.0 (compatible; MSIE ")===0&&j.toLowerCase().indexOf("opera")===-1){h=function(k){k.style.wordBreak="break-all"}}var g=function(){var m=b.get_elems(b.breakAllClass);for(var n=0,k=m.length;n<k;h(m[n++])){}};window.jQuery?f(g):a.domReady.add(g)};if(!b.noExternal){b.exec_external()}if(!b.noBreakAll){b.exec_break_all()}if(!/^Mozilla\/4\.0 \(compatible; MSIE (?:5\.5|[67]\.)/.test(navigator.userAgent)){if(!b.noRoll){b.exec_hover()}return}b.eid="_"+d+"_src";b.store=function(g,h){return h?g[b.eid]=h:g[b.eid]};b.hover=function(g){var i=g[b.eid]||(g[b.eid]=b.get_src(g));var h=b.replace_over(i);return g.src?b.add_src_over(g,i,h):b.add_bg_over(g,i,h)};b.set_width=function(g){var h=g.currentStyle;if(h.width!=="auto"||h.height!=="auto"){return}g.style.width=g.offsetWidth+"px"};b.fix=function(g){g.runtimeStyle.behavior="none";var i=g[b.eid]||(g[b.eid]=b.get_src(g));if(!i){i=g.src}if(!i||!/\.png$/.test(i.toLowerCase())){return}b.set_width(g);if(g.src){g.src=b.blankUrl}if(!g.style.zoom&&g.style.zoom!=="0"){g.style.zoom=1}b.swap(g,i);if(!g.src){b.fix_bg_elem(g)}b.bind(g,"propertychange",function(){h.apply(this,arguments)});function h(){var k=window.event;var l=k.srcElement;if(window.jQuery){l=this}var j=h;h=function(){};new function(){if(l.src){if(l.src===b.blankUrl){return}b.swap(l,l.src);l[b.eid]=l.src;l.src=b.blankUrl;return}var m=b.get_src(l);if(!m){return}b.swap(l,m);l.style.backgroundImage="none";l[b.eid]=m};h=j}};b.fix_bg_elem=function(g){g.style.backgroundImage="none";b.set_pos(g);(g.tagName.toUpperCase()==="A")&&(g.style.cursor=g.style.cursor||"pointer")};b.set_pos=function(h){var g=["input","textarea","select"];var i=function(j,n){for(var k=j.length,m;m=j[--k];){var l=m.style;!l.position&&(l.position="relative");if(!n){continue}!l.cursor&&(l.cursor=n)}};while(g.length){i(h.getElementsByTagName(g.pop()))}i(h.getElementsByTagName("a"),"pointer")};b.swap=function(h,j){if(j===b.blankUrl){return}var g=(h.currentStyle.backgroundRepeat==="no-repeat")?"crop":"scale";var i="DXImageTransform.Microsoft.AlphaImageLoader";if(h.filters.length&&i in h.filters){h.filters[i].enabled=1;h.filters[i].src=j;return}h.style.filter="progid:"+i+'(src="'+j+'",sizingMethod="'+g+'");'};b.exec_pngfix=function(){var g="expression("+d+".fix(this));";var h=c.createElement("div");h.innerHTML=(['div<div><style type="text/css">',"img, input { behavior : "+g+" };",".bgpng { behavior : "+g+" };","</style></div>"]).join("");c.getElementsByTagName("head")[0].appendChild(h.getElementsByTagName("style")[0])};if(!b.noRoll){b.exec_hover()}if(!b.noFix){b.exec_pngfix()}function e(){if(typeof a=="undefined"){a=new Object()}a.domReady={add:function(g){if(a.domReady.loaded){return g()}var i=a.domReady.observers;if(!i){i=a.domReady.observers=[]}i[i.length]=g;if(a.domReady.callback){return}a.domReady.callback=function(){if(a.domReady.loaded){return}a.domReady.loaded=true;if(a.domReady.timer){clearInterval(a.domReady.timer);a.domReady.timer=null}var l=a.domReady.observers;for(var o=0,m=l.length;o<m;o++){var n=l[o];l[o]=null;n()}a.domReady.callback=a.domReady.observers=null};var j=!!(window.attachEvent&&!window.opera);var h=navigator.userAgent.indexOf("AppleWebKit/")>-1;if(document.readyState&&h){a.domReady.timer=setInterval(function(){var l=document.readyState;if(l=="loaded"||l=="complete"){a.domReady.callback()}},50)}else{if(document.readyState&&j){var k=(window.location.protocol=="https:")?"://0":"javascript:void(0)";document.write('<script type="text/javascript" defer="defer" src="'+k+"\" onreadystatechange=\"if (this.readyState == 'complete') "+d+'.Event.domReady.callback();"><\/script>')}else{if(window.addEventListener){document.addEventListener("DOMContentLoaded",a.domReady.callback,false);window.addEventListener("load",a.domReady.callback,false)}else{if(window.attachEvent){window.attachEvent("onload",a.domReady.callback)}else{var g=window.onload;window.onload=function(){a.domReady.callback();if(g){g()}}}}}}}}}};