在Jquery中创建的按钮可以';不应用函数
我纯粹是用jQuery生成一个网页。当我按下页面上的“+”按钮时,会调用函数在Jquery中创建的按钮可以';不应用函数,jquery,Jquery,我纯粹是用jQuery生成一个网页。当我按下页面上的“+”按钮时,会调用函数add\u timeline\u element来创建一组新的元素。相反,我得到了一个错误: 未捕获的TypeError:对[object]调用了Function.prototype.apply 对象],它是对象而不是函数 我不知道为什么会发生这个错误。正如我所说的,所有内容都是通过Jquery生成的,我附加了按钮的点击和与另一个按钮/函数'm'/minimize\t\u inject\u container相同的函数,
add\u timeline\u element
来创建一组新的元素。相反,我得到了一个错误:
未捕获的TypeError:对[object]调用了Function.prototype.apply
对象],它是对象而不是函数
我不知道为什么会发生这个错误。正如我所说的,所有内容都是通过Jquery生成的,我附加了按钮的点击和与另一个按钮/函数'm'/minimize\t\u inject\u container
相同的函数,而另一个就可以正常工作
JS:
$(function(){
function add_timeline_element(){
var timeline_element = $('<ul />', {
class: "timeline_element"
});
var section_1 = $("<li />");
var section_2 = $("<li />");
var button = $('<button />', {
text: '-',
class: "t_intect_button"
//click: function(){alert($(this).parent().parent().remove();}
});
var text_input = $('<input />', {
type: "text",
class: "t_text_area"
});
section_1.append(button);
section_2.append(text_input);
timeline_element.append(section_1);
ti
meline_element.append(section_2);
$(".t_inject_container").append(timeline_element);
}
function minimize_t_inject_container(){
$(".add_button").toggle();
}
function create_twitter_bar(){
var table_container = $("<ul />", {
class: "t_inject_container"
});
var row = $("<li />", { class: "t_inject_row" });
var menu = $("<ul />", { class: "menu" });
var section_1 = $("<li />");
var section_2 = $("<li />");
var add_element_button = $("<button />", {
text: '+',
click: add_timeline_element,
class: "add_button t_intect_button"
});
var minimize_button = $("<button />", {
text: 'm',
click: minimize_t_inject_container,
class: "minimize_button t_intect_button"
});
section_1.append(add_element_button);
section_2.append(minimize_button);
menu.append(section_1);
menu.append(section_2);
row.append(menu);
table_container.append(row);
$('body').append(table_container);
}
create_twitter_bar();
$(函数(){
函数添加\时间线\元素(){
var timeline_element=$(“
”{
类:“时间线元素”
});
变量节_1=$(“”);
变量节_2=$(“”);
变量按钮=$(''{
正文:'-',
类:“t_连接按钮”
//单击:函数(){alert($(this).parent().parent().remove();}
});
变量文本输入=$(''{
键入:“文本”,
类别:“t_文本_区域”
});
第1节追加(按钮);
第2节追加(文本输入);
时间线元素追加(第1节);
钛
meline_元素。追加(第_2节);
$(“.t\u inject\u container”).append(timeline\u元素);
}
函数最小化\u t\u注入\u容器(){
$(“.add_按钮”).toggle();
}
函数create_twitter_bar(){
var table_container=$(“
”{
类:“t_注入_容器”
});
var row=$(“”,{class:“t_inject_row”});
var menu=$(“
,{class:“menu”});
变量节_1=$(“”);
变量节_2=$(“”);
var add_element_button=$(“”{
文本:“+”,
单击:添加时间线元素,
类:“添加按钮t连接按钮”
});
变量最小化按钮=$(“”{
文本:“m”,
单击:最小化\u t\u注入\u容器,
类:“最小化按钮t连接按钮”
});
第1节追加(添加元素按钮);
第2节追加(最小化按钮);
菜单.附加(第1节);
菜单.附加(第2节);
行追加(菜单);
表_container.append(行);
$('body').append(table_容器);
}
创建_twitter_bar();
您有节_1(按钮);
和节_2(文本输入);
,节_1
和节_2
都是元素。您将它们视为函数,而您不能这样做。使用
var button = $('<button />', {
text: '-',
class: "t_intect_button"
}).on('click', function(){alert($(this).parent().parent().remove())});
var按钮=$(''{
正文:'-',
类:“t_连接按钮”
}).on('click',function(){alert($(this).parent().parent().remove())});
section_1(按钮)和section_2(文本输入)
应该做什么?当我点击+按钮时,我收到一个错误,说它们不是函数(因为它们不是)。好吧,我太傻了,谢谢你。它仍然存在。