javascript prototype.js apply(this) 调用
demo:
javascript :
/*调用*/ $('body').delegate('a[data-func]', 'click', function () { var func = $(this).data('func'); funcMap[func].apply(this); if ($("#hidboxtype").val() == "LCL") { $(".vehicle_model").show(); } });
/***************创建prototype 方法*****************/ var funcMap = { save: function () { var edit = $(this).closest('.address_form_edit'); saveFactory(edit); }, insurance: function () { var edit = $(this).closest('.edit'); var text = edit.prev(); var spans = text.find('span'); SaveInsure(edit, text, spans); }, insuranceUpdate: function () { var text = $(this).closest('.text'); var edit = text.next(); edit.removeClass('hide') text.addClass('hide'); }, appendAddress: function () { var targetNode = $($(this).data('target')); if (targetNode.html() != "") { return; } if (!targetNode.find('.address_form_edit').length || !targetNode.find('.address_form_edit').hasClass('active')) { var htmlNode = $(html2); targetNode.append(htmlNode); var i = $.find(':input[data-key=service]').length; var date = $("#hidloadingtime").val(); targetNode.find(':input[name=radio]').each(function () { $(this).attr("name", "radio" + i); }); } bindarea(targetNode.find('.ddlone'), '32dfe02d307348aabb1f1a7937dd1d66'); if ($("#hidStartplace").val() != "" && $(targetNode).attr("id") == "ccc") { select_address(targetNode.find('.address_form_edit'), $("#hidStartplace").val()); } }, update: function () { $(this).closest('.address_form_text').removeClass('active').next().addClass('active'); }, del: function () { if (confirm("删除后不可恢复,确定要删除吗?")) { var edit = $(this).closest('.address_form').next(); delFactory(edit); } } };
html:
<a class="btn" data-func="appendAddress" data-target="#ddd" style="display: none">文字</a>

浙公网安备 33010602011771号