Javascript js-如何命名此代码的名称空间?

Javascript js-如何命名此代码的名称空间?,javascript,jquery,namespaces,Javascript,Jquery,Namespaces,我试图使用名称空间,但可以;我不能让它工作。 我尝试过用mdd={}包装所有代码,也尝试过用$(document).ready(withvar mdd={}包装所有代码,但都不起作用 如何为此代码添加名称空间 <script type="text/javascript"> $(document).ready( function() { $("#categories").sortable({ revert: true, receive: functi

我试图使用名称空间,但可以;我不能让它工作。 我尝试过用mdd={}包装所有代码,也尝试过用
$(document).ready(
with
var mdd={}
包装所有代码,但都不起作用

如何为此代码添加名称空间

<script type="text/javascript">
  $(document).ready( function() {
    $("#categories").sortable({
      revert: true,
      receive: function(evt, ui) {
        ui.item.remove();
        if ( $('#list_to_process li').length == 0) {
          $('#list_to_process').remove();
        }
      }
    });
    $("li.to_process").draggable( {
      connectToSortable: "#categories",
      helper: "clone",
      revert: "invalid"
    });
  });
</script>

$(文档).ready(函数(){
$(“#类别”)。可排序({
回复:对,
接收:功能(evt、ui){
ui.item.remove();
if($('#list_to_process li')。长度==0){
$(“#列出_到_进程”).remove();
}
}
});
$(“li.to_过程”)。可拖动({
connectToSortable:“#类别”,
助手:“克隆”,
回复:“无效”
});
});

JQuery的
.sortable
.draggable
调用是方法,而不是事件处理程序。据我所知,它们无法命名

但是,jQuery的
$(document).ready(…
是一个事件处理程序,因此您可以为它命名名称空间,但前提是它使用
.on
方法。请注意,我以前没有测试过这一点,但如果它是可行的,那么下面应该可以:

$(document).on("ready.namespace", function() {
    ...
});

如果组织代码是您试图实现的目标,我建议如下:

  • $(文档)之外创建您的命名空间
  • $(document).ready
    上调用代码
示例:

$(function(){
    MDD.init();
});

var MDD = function () {
  var init = function () {
    $("#categories").sortable({
      revert: true,
      receive: function(evt, ui) {
        ui.item.remove();
        if ( $('#list_to_process li').length == 0) {
          $('#list_to_process').remove();
        }
      }
    });
    $("li.to_process").draggable( {
      connectToSortable: "#categories",
      helper: "clone",
      revert: "invalid"
    });
  };
  return {
    init : init
  }
}();

您想向名称空间添加什么?我没有看到导出的方法或属性,只有2个函数调用……为什么有人需要为document ready事件命名名称空间是另一回事。@Juhana-我不知道,我真的不在乎。这是OP中的问题。