Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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
余烬中的Jquery颜色选择器_Jquery_Jquery Ui_Ember.js_Color Picker - Fatal编程技术网

余烬中的Jquery颜色选择器

余烬中的Jquery颜色选择器,jquery,jquery-ui,ember.js,color-picker,Jquery,Jquery Ui,Ember.js,Color Picker,我的余烬中有一个按钮,我想调用一个Jquery颜色选择器将弹出的操作。问题是,第一次点击按钮时,除了第二次开始工作外,什么都没有发生 在我的message.hbs文件中,我想得到这个。我如何让colorpicker出现在点击我的按钮上 在我的color_picker.js中,我就是这样做的 Cards.ColorPicker = Em.View.extend({ classNames: ['cmp-colpick'], pluglin: null, templateName: 'color-pi

我的余烬中有一个按钮,我想调用一个Jquery颜色选择器将弹出的操作。问题是,第一次点击按钮时,除了第二次开始工作外,什么都没有发生

在我的message.hbs文件中,我想得到这个。我如何让colorpicker出现在点击我的按钮上

在我的color_picker.js中,我就是这样做的

Cards.ColorPicker = Em.View.extend({
classNames: ['cmp-colpick'],
pluglin: null,
templateName: 'color-picker',
didInsertElement: function() {
    this.plugin = this.$().colpick({
        layout: 'hex',
        submit: 0,
        color: '#000000',
        onChange: function (hsb, hex, rgb, el, bySetColor) {
            $('#postcard_message').css("color", '#' + hex);
            $('.color-preview').css("background-color", '#' + hex);
            $('#font-color').colpickHide();
        }
    });
},
willDestroyElement: function() {
    //Destroy plugin
}
}));
我希望颜色选择器只需单击一次即可开始工作。我不想点击按钮两次。任何帮助都将不胜感激。

在使用jquery插件时,将它们包装在视图中是一种很好的做法。 这是你的电话号码

这是相关代码

App.ColorPicker = Em.View.extend({
    classNames: ['cmp-colpick'],
    pluglin: null,
    templateName: 'color-picker',
    didInsertElement: function() {
      this.plugin = this.$().colpick({
        layout: 'hex',
        submit: 0,
        color: '#000000',
        onChange: function (hsb, hex, rgb, el, bySetColor) {
          console.log('sdf');
          $('body').css("background", '#' + hex);
        }
      });
    },
    willDestroyElement: function() {
      //Destroy plugin
    }
});

<script type="text/x-handlebars" data-template-name="index"> 
  {{view App.ColorPicker}}
</script>

<script type="text/x-handlebars" data-template-name="color-picker">
  <button>Choose Color</button>
</script>
App.ColorPicker=Em.View.extend({
类名:['cmp-colpick'],
pluglin:null,
templateName:'颜色选择器',
didInsertElement:函数(){
this.plugin=this.$().colpick({
布局:“十六进制”,
提交:0,
颜色:'#000000',
onChange:函数(hsb、十六进制、rgb、el、bySetColor){
console.log('sdf');
$('body').css(“背景”、'#'+hex);
}
});
},
元素:函数(){
//销毁插件
}
});
{{view App.ColorPicker}
选择颜色

您是否尝试过调试它,并检查是否在第一次调用该函数?我个人需要更多的信息来尝试和帮助。是的,我试过了。我在函数中添加了一个警报。它第一次发出警报,但没有使用颜色选择器。下次它将启动颜色选择器,但不会启动任何警报。下面是一个工作示例。你看,你必须点击两次按钮才能让它工作。我还有一个自定义的余烬视图,它的动作在第一次点击时什么都不做,然后再完美地工作。非常神秘我已经在我的答案中添加了一个工作演示。我找不到你现在的密码有什么问题。也许一个有更新代码的失败bin会有所帮助。