如何修改最小化的jQuery插件文件?

时间:2011-06-15 17:21:33

标签: jquery jquery-plugins minimized

我想编辑supersized.3.1.3.core.min.js文件。

这是代码(暂时放在这里):

(function(a){a(document).ready(function(){a("body").prepend('<div id="supersized-loader"></div>').append('<div id="supersized"></div>')});a.supersized=function(b){var d={start_slide:1,vertical_center:0,horizontal_center:0,min_width:0,min_height:0,fit_portrait:0,fit_landscape:0,image_protect:1};var c=a("#supersized");if(b){var b=a.extend(d,b)}else{var b=a.extend(d)}if(b.start_slide){var f=b.start_slide-1}else{var f=Math.floor(Math.random()*b.slides.length)}a("<img/>").attr("src",b.slides[f].image).appendTo(c);c.hide();a(document).ready(function(){e()});a(window).load(function(){a("#supersized-loader").hide();c.fadeIn("fast");e()});a(window).resize(function(){e()});function e(){return c.each(function(){var g=a("img",c);a(g).each(function(){var i=(a(this).height()/a(this).width()).toFixed(2);thisSlide=a(this);var h=a(window).width();var k=a(window).height();var l;if((k<=b.min_height)&&(h<=b.min_width)){if((k/h)>i){b.fit_landscape&&i<=1?j(true):m(true)}else{b.fit_portrait&&i>1?m(true):j(true)}}else{if(h<=b.min_width){if((k/h)>i){b.fit_landscape&&i<=1?j(true):m()}else{b.fit_portrait&&i>1?m():j(true)}}else{if(k<=b.min_height){if((k/h)>i){b.fit_landscape&&i<=1?j():m(true)}else{b.fit_portrait&&i>1?m(true):j()}}else{if((k/h)>i){b.fit_landscape&&i<=1?j():m()}else{b.fit_portrait&&i>1?m():j()}}}}function j(n){if(n){if(thisSlide.width()<h||thisSlide.width()<b.min_width){if(thisSlide.width()*i>=b.min_height){thisSlide.width(b.min_width);thisSlide.height(thisSlide.width()*i)}else{m()}}}else{if(b.min_height>=k&&!b.fit_landscape){if(h*i>=b.min_height||(h*i>=b.min_height&&i<=1)){thisSlide.width(h);thisSlide.height(h*i)}else{if(i>1){thisSlide.height(b.min_height);thisSlide.width(thisSlide.height()/i)}else{if(thisSlide.width()<h){thisSlide.width(h);thisSlide.height(thisSlide.width()*i)}}}}else{thisSlide.width(h);thisSlide.height(h*i)}}}function m(n){if(n){if(thisSlide.height()<k){if(thisSlide.height()/i>=b.min_width){thisSlide.height(b.min_height);thisSlide.width(thisSlide.height()/i)}else{j(true)}}}else{if(b.min_width>=h){if(k/i>=b.min_width||i>1){thisSlide.height(k);thisSlide.width(k/i)}else{if(i<=1){thisSlide.width(b.min_width);thisSlide.height(thisSlide.width()*i)}}}else{thisSlide.height(k);thisSlide.width(k/i)}}}if(b.horizontal_center){a(this).css("left",(h-a(this).width())/2)}if(b.vertical_center){a(this).css("top",(k-a(this).height())/2)}});if(b.image_protect){a("img",c).bind("contextmenu",function(){return false});a("img",c).bind("mousedown",function(){return false})}return false})}}})(jQuery);

我想添加自定义代码行:

$('#content').delay('fast').fadeIn('slow');

在这一点内:

a(window).load(function(){a("#supersized-loader").hide();c.fadeIn("fast");e()});

使背景图像淡入后#content div缓慢淡入。

我在非最小化版本中这样做了,如下所示:

    $(window).load(function(){

            $('#supersized-loader').hide();     //Hide loading animation
            element.fadeIn('fast');             //Fade in background

            resizenow();

$('#content').delay('fast').fadeIn('slow'); //my bit of code

        });

- 但我非常想知道如何在最小化的代码中做同样的事情。

我很感激您的专业建议!

4 个答案:

答案 0 :(得分:3)

您可以对.js文件的非最小版本进行更改,然后使用多个Web工具之一将其打包回来。由于.min版本只是一个打包的完整.js文件,你应该很高兴。

这是一个有用的:http://dean.edwards.name/packer/

答案 1 :(得分:1)

为什么不使用最小化的代码,添加你的代码,测试一切让你满意,然后再次最小化?

当然,您可以简单地从您的插入中删除空白并插入其中,然后插入

a(window).load(function(){a("#supersized-loader").hide();c.fadeIn("fast");e();a('#content').delay('fast').fadeIn('slow')});

假设e()resizenow(),这是一个合理的猜测。

答案 2 :(得分:0)

你试过吗

a(window).load(function(){a("#supersized-loader").hide();c.fadeIn("fast");$('#content').delay('fast').fadeIn('slow');e()});

答案 3 :(得分:0)

为什么不缩小编辑过的未压缩版本?

请参阅http://developer.yahoo.com/yui/compressor/了解详细信息。