Javascript MaterializeCss模式错误OpenModel不是函数

Javascript MaterializeCss模式错误OpenModel不是函数,javascript,jquery,material-design,materialize,Javascript,Jquery,Material Design,Materialize,我有Jquery的所有要求,Materialize.js位于我的js文件上方,但是我得到警告OpenModel不是一个函数。我检查了模态名称是否正确,我可以运行Materialize.toast,所以我知道Materialize.js正在工作。用按钮触发也不会调用模式。这是密码 脚本: <script type="text/javascript" src="https://code.jquery.com/jquery-2.1.1.min.js"></script> <

我有Jquery的所有要求,Materialize.js位于我的js文件上方,但是我得到警告OpenModel不是一个函数。我检查了模态名称是否正确,我可以运行Materialize.toast,所以我知道Materialize.js正在工作。用按钮触发也不会调用模式。这是密码

脚本:

<script type="text/javascript" src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script type="text/javascript" src="/js/materialize.js"></script>
<script type="text/javascript" src="/js/video.js"></script>
<script src="/js/admin.js"></script>

具体化函数需要Jquery元素。
getElementById()-为我们提供DOM对象

//You can either convert this Dom object to Jquery

var modal = document.getElementById('modal1');
var jquerymodal = $(modal);  //convert to jQuery Element
jquerymodal.openModal();


//Or just use Jquery Element like

$('#modal1').openModal();

好的,我也有同样的问题,我通过改变调用打开模式和初始化来修复它

如果您有与我相同的问题,请查看最新的文档

这可能是新的-此处不使用openModal()

初始化:

<script>
   try {
       try {
      $('#modalId').modal();
  } catch (e) {
      console.info('loading modal auto-initialized..');
  }
   }
</script>

导入materialize/dist文件夹中的缩小文件,而不是materialize/js

运行时使用: $('#elementId').modal(); $('#elementId').modal('show')

就是这样

编辑:

事实上,它在生产环境中不起作用

所以我这样做了:

(function( $ ) {

    $.fn.showModal = function() {

        var self = this;
        try {
            this.modal();
            self.modal('open');
        } catch (err) {
            try{
                self.openModal();
            } catch (err2) {
                console.error("Something went wrong - cannot open modal.");             
            }
        }
    }


    $.fn.hideModal = function() {

        var self = this;
        try {
            this.modal();
            self.modal('close');
        } catch (err) {
            try{
                self.closeModal();
            } catch (err2) {
                console.error("Something went wrong - cannot close modal.");                
            }
        }
    }


}( jQuery ));

只需使用:$(“#modal”).showModal()

我也尝试给它Jquery,但也没有接受。响应:未捕获的TypeError:$(…)。OpenModel不是函数
//You can either convert this Dom object to Jquery

var modal = document.getElementById('modal1');
var jquerymodal = $(modal);  //convert to jQuery Element
jquerymodal.openModal();


//Or just use Jquery Element like

$('#modal1').openModal();
<script>
   try {
       try {
      $('#modalId').modal();
  } catch (e) {
      console.info('loading modal auto-initialized..');
  }
   }
</script>
$('#modalID').modal('open');
(function( $ ) {

    $.fn.showModal = function() {

        var self = this;
        try {
            this.modal();
            self.modal('open');
        } catch (err) {
            try{
                self.openModal();
            } catch (err2) {
                console.error("Something went wrong - cannot open modal.");             
            }
        }
    }


    $.fn.hideModal = function() {

        var self = this;
        try {
            this.modal();
            self.modal('close');
        } catch (err) {
            try{
                self.closeModal();
            } catch (err2) {
                console.error("Something went wrong - cannot close modal.");                
            }
        }
    }


}( jQuery ));