Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript初始化时具体化重复项_Javascript_Css_Materialize - Fatal编程技术网

在javascript初始化时具体化重复项

在javascript初始化时具体化重复项,javascript,css,materialize,Javascript,Css,Materialize,我一直在我的joomla网站上玩ECS。我有一个T3框架模板(我对web开发非常陌生)。 我遇到的问题是,每当我使用一个需要js初始化的项时,它都会被复制,一个是javascript样式,另一个是css样式。例如,使用选择项或日期选择器时会发生这种情况。我使用这里给出的示例代码: 另一件奇怪的事情是样式没有完全应用,例如输入字段从未应用 多谢各位 编辑: javascript代码: $(document).ready(function() { $('select').materia

我一直在我的joomla网站上玩ECS。我有一个T3框架模板(我对web开发非常陌生)。 我遇到的问题是,每当我使用一个需要js初始化的项时,它都会被复制,一个是javascript样式,另一个是css样式。例如,使用选择项或日期选择器时会发生这种情况。我使用这里给出的示例代码:

另一件奇怪的事情是样式没有完全应用,例如输入字段从未应用

多谢各位

编辑:

javascript代码:

  $(document).ready(function() {
    $('select').material_select();
  });
css:

物化已禁用
选择你的选择
选择1
选择2
选择3
图片:


当我说部分应用了该样式时,我的意思是它看起来不像materializecss网页中所示的那样,它看起来像是被禁用了。

您将在第一次加载DOM时或之后获得此副本


因为我认为您初始化了相同的函数
.material\u select()
2次或更多次…

我也遇到了同样的问题,这就是我能够修复它的原因,希望它对您有用

a) 将materialize元素的所有初始化放在一个函数中

function initializeMaterialize() {
  // initialize materialize slider
  $('.slider').slider();

  // initialize materialize select
  $('select').material_select();

  // initialize materialize datepicker
  $('.datepicker').pickadate({
    selectMonths: true,
    selectYears: 20,
    onSet: function(ele) { if(ele.select) { this.close(); } },
    format: 'mm/dd/yyyy',
    formatSubmit: 'yyyy-mm-dd'
  });
}
b) 然后调用`$(window.load)(function(){})上的函数


这将只进行一次调用,因此您只能获得每个元素的一份副本。

请添加代码或使用小提琴显示问题代码。。。你说这些风格没有完全应用是什么意思?我用更多的信息更新了原来的帖子。谢谢你看起来像一把香草小提琴像预期的那样工作。。。(我添加了两个选择-一个被禁用)。代码中的其他内容是造成重复的原因。。。
function initializeMaterialize() {
  // initialize materialize slider
  $('.slider').slider();

  // initialize materialize select
  $('select').material_select();

  // initialize materialize datepicker
  $('.datepicker').pickadate({
    selectMonths: true,
    selectYears: 20,
    onSet: function(ele) { if(ele.select) { this.close(); } },
    format: 'mm/dd/yyyy',
    formatSubmit: 'yyyy-mm-dd'
  });
}
$(window).load(function() {
  initializeMaterialize();
});