0

私は現在、フロントエンドを行っているサイト用の jQuery 関数を大量に持っています。私は実際には jQuery の「忍者」ではありません (ようやく sitepoint の本を読み始めました) ので、このコードはおそらく書き方が悪く、もう少しクリーンで意地悪で無駄のないものになると確信しています。

ここにコードがあります -

// add hasJS to html to allow for CSS fallbacks

jQuery(function($) {
$('html').addClass('hasJS');
});

// ENDS

// show/hide/kill the upload files modal box 

$('.upload').click(function(){
$('.uploader').toggle();
});

$('.creategroup').click(function(){
$('.createnewgroup').toggle();
return false;  
});

$('.adduser').click(function(){
$('.addnewuser').toggle();
return false;
});

 $('#tap-menu').click(function() {
$('#left-column, #settings, #ortibi, #userprofile').toggle();
 }); 

$('.cancel').click(function(){
$('.uploader, .shareform').hide();
  });

$('.connection-type').click(function(){
$('.connectform').toggle();
  });


$('.shareit').click(function(){
$('.shareform').show();
});
$(function() {
    $('article .folder-items').hide();    

$("p.folder").click(function () {
      $(this).parent().next(".folder-items").slideToggle("slow");
});
});
 $(document).ready(function(){

    $('#scrollbar1').tinyscrollbar();

});


// ENDS

$('textarea#txtarea_Message"').autoResize({
// On resize:
onResize : function() {
    $(this).css({opacity:0.8});
},
// After resize:
animateCallback : function() {
    $(this).css({opacity:1});
},
// Quite slow animation:
animateDuration : 300,
// More extra space:
extraSpace : 40
});

$("input:checkbox").uniform();
$("#check1").live("click", function(){
var two = $("#check2").attr("checked", this.checked);
$.uniform.update(two);
});

今、私はおそらくここで多くのことを間違っています。このコードを改善するにはどうすればよいですか? すべての助けに感謝します:o)

4

2 に答える 2

1

このようなもの?

// add hasJS to html to allow for CSS fallbacks
jQuery(function ($) {
    $('html').addClass('hasJS');

    $('article .folder-items').hide();
    $("p.folder").click(function () { $(this).parent().next(".folder-items").slideToggle("slow"); });

    $('#scrollbar1').tinyscrollbar();
});

// ENDS

// show/hide/kill the upload files modal box

$('.upload').click(function () { $('.uploader').toggle(); });

$('.creategroup').click(function (e) { e.preventDefault(); $('.createnewgroup').toggle(); });

$('.adduser').click(function (e) { e.preventDefault(); $('.addnewuser').toggle(); });

$('#tap-menu').click(function () { $('#left-column, #settings, #ortibi, #userprofile').toggle(); });

$('.cancel').click(function () { $('.uploader, .shareform').hide(); });

$('.connection-type').click(function () { $('.connectform').toggle(); });

$('.shareit').click(function () { $('.shareform').show(); });

$('textarea#txtarea_Message"').autoResize({
    // On resize:
    onResize: function () { $(this).css({ opacity: 0.8 }); },
    // After resize:
    animateCallback: function () { $(this).css({ opacity: 1 }); },
    // Quite slow animation:
    animateDuration: 300,
    // More extra space:
    extraSpace: 40
});

$("input:checkbox").uniform();
$("#check1").bind("click", function () {
    var two = $("#check2").attr("checked", this.checked);
    $.uniform.update(two);
});
于 2012-04-06T07:28:57.927 に答える
1
  1. Jquery liveはバージョン 1.7 で非推奨になりました。 動作/パフォーマンスが向上しています。

  2. JT Smith がコメントしたように、複数の形式の複数の「ドキュメント対応」スクリプトがあります。

    「ドキュメント準備完了」呼び出しで、これらすべてを 1 つにラップできます

    $(document).ready{function() {} }jquery(function() { }、および $(function() { } - 私の知る限り、これらはすべて同じで、同じように機能します。単一の形式に固執することができます。

于 2012-04-06T07:19:22.650 に答える