Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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 JQuery单击代理函数_Javascript_Jquery_Html_Proxy - Fatal编程技术网

Javascript JQuery单击代理函数

Javascript JQuery单击代理函数,javascript,jquery,html,proxy,Javascript,Jquery,Html,Proxy,下面是一个场景。我想自定义内置插件。下面是默认功能的场景 默认情况下的当前场景 var img = $('<img src="' + val.thumb + '" />'); $(img).click($.proxy(this.imageThumbClick, this)); imageThumbClick: function (e) { var img = '<img id="image-marker" src="' + $(e.target).attr('r

下面是一个场景。我想自定义内置插件。下面是默认功能的场景

默认情况下的当前场景

var img = $('<img src="' + val.thumb + '" />');
$(img).click($.proxy(this.imageThumbClick, this));
imageThumbClick: function (e) {
        var img = '<img id="image-marker" src="' + $(e.target).attr('rel') + '" alt="' + $(e.target).attr('title') + '" />';
        var parent = this.getParent();
        if (this.opts.paragraphy && $(parent).closest('li').size() == 0) img = '<p>' + img + '</p>';
        this.imageInsert(img, true); // insert an image
    }
有一个列表,如果缩略图图像,当我点击一个图像,然后它只是被插入到该地区。请参阅下面的默认代码

默认编码

var img = $('<img src="' + val.thumb + '" />');
$(img).click($.proxy(this.imageThumbClick, this));
imageThumbClick: function (e) {
        var img = '<img id="image-marker" src="' + $(e.target).attr('rel') + '" alt="' + $(e.target).attr('title') + '" />';
        var parent = this.getParent();
        if (this.opts.paragraphy && $(parent).closest('li').size() == 0) img = '<p>' + img + '</p>';
        this.imageInsert(img, true); // insert an image
    }
var img=$('');
$(img).单击($.proxy(this.imageThumbClick,this));
imageThumbClick:函数(e){
var img=“”;
var parent=this.getParent();
if(this.opts.paragraphy&&$(parent).closest('li').size()==0)img=''+img+'

'; this.imageInsert(img,true);//插入图像 }
我的要求

var img = $('<img src="' + val.thumb + '" />');
$(img).click($.proxy(this.imageThumbClick, this));
imageThumbClick: function (e) {
        var img = '<img id="image-marker" src="' + $(e.target).attr('rel') + '" alt="' + $(e.target).attr('title') + '" />';
        var parent = this.getParent();
        if (this.opts.paragraphy && $(parent).closest('li').size() == 0) img = '<p>' + img + '</p>';
        this.imageInsert(img, true); // insert an image
    }
我想如果我点击任何缩略图,那么它应该标记为选中,然后如果我点击按钮“插入图像”,那么选定的图像应该插入。但是我的代码不起作用。你能帮我实现我的目标吗

我的自定义代码

var img = $('<img src="' + val.thumb + '" />');
var thisImg;
 $(img).click(function () {
     $('img').removeClass('checked');
     $(this).addClass('checked');
     thisImg = $(this);
 });
 $('#insert-btn').click(function () {
     thisImg.imageThumbClick();
 });
imageThumbClick: function (e) {
    var img = '<img id="image-marker" src="' + $(e.target).attr('rel') + '" alt="' + $(e.target).attr('title') + '" />';
    var parent = this.getParent();
    if (this.opts.paragraphy && $(parent).closest('li').size() == 0) img = '<p>' + img + '</p>';
    this.imageInsert(img, true); // insert an image
}
var img=$('');
var thisImg;
$(img)。单击(函数(){
$('img').removeClass('checked');
$(this.addClass('checked');
thisImg=$(本次);
});
$('#插入btn')。单击(函数(){
thisImg.imageThumbClick();
});
imageThumbClick:函数(e){
var img=“”;
var parent=this.getParent();
if(this.opts.paragraphy&&$(parent).closest('li').size()==0)img=''+img+'

'; this.imageInsert(img,true);//插入图像 }
什么不起作用?有错误吗?@reyaner,是的,错误是在cosole“uncaughttypeerror:无法读取未定义的”(匿名函数)jQuery.event.dispatch elemData.handle的属性“imageThumbClick”上,这是有意义的。在您的代码中,您可以像使用对象函数一样使用
imageThumbClick
,但是,除非有我们看不到的代码,否则它不在对象内部。