//这里的代码是最早写的,很乱,以后整合优化 var editors = []; $(document).ready(function() { //init(); }); function init() { edit(); del(); checkbox(); image(); change(); autocomplete(); template(); submit(); loadShow(); initEditor(); initPic(); initDate(); //更新页面一些功能,上边的一些功能等找时间再优化吧 dever_update.init(); hljs.initHighlightingOnLoad(); table(); } function initMenu() { if(typeof(config.layout) != "undefined") { $('.list-unstyled li').each(function(j) { $(this).unbind('click').bind('click', function() { $('.list-unstyled .active').each(function() { $(this).attr('class', ''); $(this).find('a').attr('class', ''); }) $(this).attr('class', 'active'); var a = $(this).find('a'); a.attr('class', 'subdrop'); //alert($(this).attr('class')); }) }); $('.project-list').each(function() { $(this).unbind('click').bind('click', function() { $('.project-list').each(function() { $(this).find('i').parent().attr('class', ''); $(this).find('ul').attr('class', 'list-unstyled upload-menu'); }) $(this).find('i').parent().attr('class', 'active'); $(this).find('ul').attr('class', 'list-unstyled upload-menu in'); }) }); } } function table() { $('[data-pattern]').each(function () { var $tableScrollWrapper = $(this); $tableScrollWrapper.responsiveTable($tableScrollWrapper.data()); }); } function initDate() { $.datetimepicker.setLocale('ch'); if($(".manage_time").length) { $(".manage_time").each(function() { $(this).datetimepicker( { //inline:true, timepicker:false, format:'Y-m-d', lang:'ch' }); }); } if($(".manage_date").length) { $(".manage_date").each(function() { $(this).datetimepicker( { //datepicker:false, format:'Y-m-d H:i:s', lang:'ch' }); }); } } function initPic() { $('a[rel]').fancybox(); } function initEditor() { if($('.editor').length) { $('.editor').each(function() { var parent = $(this).parent().parent(); //alert(parent.attr('id')); if(parent.attr('id') && parent.attr('id').indexOf('-child-0') != -1) { return; } loadEditor($(this)); }) } } function loadEditor(e) { if(!e.length) { return; } var id = e.attr('id'); var key = e.attr('key'); var toolbar = [ 'title' ,'bold' ,'italic' ,'underline' ,'strikethrough' ,'fontScale' ,'color' ,'ol' ,'ul' ,'blockquote' ,'code' ,'table' ,'link' ,'image' ,'hr' ,'indent' ,'outdent' ,'alignment' //,'emoji' , '|' ,'html' ]; if(typeof(editors[id]) == "object") { editors[id].destroy(); editors[id] = undefined; } if(typeof(editors[id]) == "undefined") { editors[id] = new Simditor( { textarea: e, upload: { url: config.upload + '.simditor', params: {key:key}, fileKey: 'file', connectionCount: 10, leaveConfirm: 'Uploading is in progress, are you sure to leave this page?' }, toolbar : toolbar, emoji: { imagePath: config.lib + 'simditor/plugins/emoji/images/emoji/' } }); } } //更新页面的提交按钮 function submit() { if($(".save-data").length) { $(".save-data").unbind('click').bind('click', function() { submit_action(); //$(this).unbind('click'); }) } } //设置某一个input的值 function set_update(id, value) { if($(id).length) { $(id).val(value); } } /** * 批量复制数据 */ function copy_data(e) { var html = '
'; html += '
请输入要复制的数量:
'; html += '
'; $('#dever_modal_body').html(html); $('#dever_modal_title').html('复制数据'); $("#dever_modal_yes").unbind('click').bind('click', function() { set_update('#copy_num', $("#temp_copy_num").val()); set_update('#update_where_id', 0); submit_action(); }); } //直接提交更新页的数据 function submit_action() { $(".form1").submit(); } //头部菜单 function topMenu(e) { var p = e.parent().parent().parent().find('span'); p.html(e.html()); //更新当前的精细权限 var url = config.host + 'top.update_action?json=1'; var id = e.attr('data-id'); $.post(url, {id:id}, function(t) { if(location.href.indexOf('where_id') != -1) { var href = location.href.split('where_id'); location.href = href[0] + 'where_id=' + t; } else { location.reload(); } }) } //更新页面的批量载入选择 function loadShow() { if($(".show_input").length) { $(".show_input input").each(function() { if($(this).attr('checked')) { inputShow($(this), $(this).attr('show_id')); } }) } } function inputShow(e,n) { var item = e.parent().find('input'); $(".show_" + n).hide(); var array = ['input', 'textarea']; for(var a in array) { $(".show_" + n).find(array[a]).removeClass('validate[required]'); } item.each(function() { if($(this).get(0).checked == true) { inputShowOne($(this),n); } }); } function inputShowOne(e,n) { var value = e.val(); //$(".show_" + n).hide(); //$(".show_" + n + '_' + value).attr('style','color:red').show(); $(".show_" + n + '_' + value).show(); var array = ['input', 'textarea']; for(var a in array) { if($(".show_" + n + '_' + value).length && $(".show_" + n + '_' + value).attr('class').indexOf('show_no') == -1) { $(".show_" + n + '_' + value).find(array[a]).each(function() { var parent = $(this).parent(); if($(this).attr('class') != 'editor' && parent.find('label').length && parent.find('label').html().indexOf('选填') == -1) { $(this).addClass('validate[required]'); } }) } } } //批量更新 function list_mul(e) { var type = parseInt($("#mul_type").val()); if(type != 1 && type != 2) { alert('您还没有选择数据更新方式'); return; } if(confirm('确定进行此项操作吗?')) { //e.html('更新中').unbind('click'); $('#method').val('mul'); $('#function').val('msg'); $('#form1').attr('target', 'f1').submit(); } } //搜索 function list_search(e) { $('#method').val('search'); $('#function').val(''); $('#form1').attr('target', '').submit(); } //更新数据 function update(e, id, key, table) { var col = e.attr('name').replace('up_col_', ''); var value = e.val(); var url = config.host + 'database.update_action?json=1'; $.post(url, {where_id:id,col:col,value:value,key:key,table:table}, function(t) { notice('操作已成功!您的操作已修改当前选项!'); preview(); }) } function notice(msg) { var notice = new PNotify({ title: '提示信息', text: msg, buttons: { closer: false, sticker: false } }); notice.get().click(function() { notice.remove(); }); } //模板选择 function template() { if(config.template) { $('body').attr('class', 'theme-' + config.template); } if($(".selector").length) { $(".selector").each(function() { if($(this).data('check') == 'checked') { selector($(this)); } }) } } //选择器 function selector(e) { var value = e.data('value'); var name = e.data('name'); $('#'+name+'_value').val(value); $('.'+name+'_selector').children().css({'border':'1px solid #ccc'}); e.children().css({'border':'1px solid black'}); if(name == 'update_template') { $('body').attr('class', 'theme-' + value); } } //根据e的值,来载入其他数据 function loading(e, data) { var value = e.val(); if(e.attr('id') && e.attr('id').indexOf('_temp') != -1) { var id = e.attr('id').replace('_temp', ''); if($('#' + id).length) { var value = $('#' + id).val(); } } if(data.element) { if(data.url) { data.value = value; $.getJSON(data.url, data, function(t) { $('#update_'+data.element+'_value').val(t.data); }); } else { $('#update_'+data.element+'_value').val(value); } } else if(data.url) { data.value = value; data.where_id = $('#update_where_id').val(); data.table = $('#table').val(); data.key = $('#key').val(); $.getJSON(data.url, data, function(s) { t = s.data; if(t.indexOf('onblur') != -1) { eval(t); } else { var parent = e.parent().parent(); if(t.indexOf('status') == -1) { if(data.type == 1) { $('.checking_1,.checking_2,.checking_3,.checking_4').each(function() { $(this).remove(); }); } else { $('.checking_-1,.checking_3,.checking_4').each(function() { $(this).remove(); }); } parent.after(t); checkbox(); } } }); } } //根据e的值,来载入其他数据,先检测是否选中 function checking(name, e, data) { var value = []; $('.' + name).each(function() { if($(this).get(0).checked == true) { value.push($(this).val()); } }); if(data.url) { data.value = value.join(','); data.where_id = $('#update_where_id').val(); data.table = $('#table').val(); data.key = $('#key').val(); if(data.check) { data.check_value = false; $(data.check).each(function() { if($(this).get(0).checked == true) { data.check_value = $(this).val(); } }); } $.getJSON(data.url, data, function(s) { t = s.data; var parent = e.parent().parent().parent(); if(t.indexOf('status') == -1) { if(data.type == 1) { $('.checking_1,.checking_2,.checking_3,.checking_4').each(function() { $(this).remove(); }); } else { $('.checking_-1,.checking_3,.checking_4').each(function() { $(this).remove(); }); } parent.after(t); checkbox(); } }); } } function autocomplete() { if($("input[complete]").length) { $("input[complete]").each(function() { var cache = {}; var self = $(this); self.autocomplete( { minLength: 2, source: function( request, response ) { var term = request.term; if ( term in cache ) { response( cache[ term ] ); return; } $.getJSON(self.attr('complete') + '&callback=?', request, function( data, status, xhr ) { console.info(data); cache[ term ] = data; var state = true; for(var i in data) { if(data[i].id <=0) { state = false; } } if(state) { response( data ); } }); }, select: function( event, ui ) { //log( "Selected: " + ui.item.value + " aka " + ui.item.id ); var value = self.attr('complete_callback'); var id = self.attr('id').replace('_temp', ''); $("#" + id).val(ui.item[value]); } }); }) } } //后台通用的提示 function msg(value) { if(value == 1) { location.reload(); return; } submit(); var url = ''; if(value.msg != 'reload' && value.status == 2) { //showAlert(value.msg); alert(value.msg); //location.reload(); return; } else if(value.msg == 'reload') { if(typeof(config.layout) != "undefined" && $(config.layout).length) { $.pjax({url: location.href, container: config.layout}); } else { location.reload(); } return; } else { if(value.msg.indexOf('http://') != -1) { url = value.msg; } else if($("#url").length) { url = $("#url").val(); } else { notice(value.msg); return; } if(url) { if(typeof(config.layout) != "undefined" && $(config.layout).length) { $.pjax({url: url, container: config.layout}); } else { location.href = url; } } else { if(typeof(config.layout) != "undefined" && $(config.layout).length) { $.pjax({url: location.href, container: config.layout}); } else { location.reload(); } } } return; } /** * 处理多选问题,处理全选按钮 */ function checkbox() { if($(".autoload").length) { $(".autoload").each(function() { if($(this).get(0).checked == true) { $(this).removeClass('autoload'); $(this).load(); } }); } if($(".autoload_text").length) { $(".autoload_text").each(function() { if($(this).val()) { $(this).removeClass('autoload_text'); $(this).load(); } }); } var name = 'checkbox-checkall'; var checkbox = $("." + name); if(checkbox.length) { checkbox.click(function() { var self = $(this); $("." + name + "-" + self.val()).each(function() { $(this).get(0).checked = self.get(0).checked; var next = $(this).next(); if($(this).get(0).checked == true) { if(next.length) { //next.attr('disabled', false); } if($("#mul_type").length) { $("#mul_type").val(1); } } else { if(next.length) { //next.attr('disabled', true); } if($("#mul_type").length) { $("#mul_type").val(0); } } }) }); checkbox.each(function() { var self = $(this); $("." + name + "-" + self.val()).each(function() { $(this).click(function() { var next = $(this).next(); if($(this).get(0).checked == true) { self.get(0).checked = true; if(self.attr('type') == 'radio') { //如果父选项是radio类型,做下限制 //alert(1); } if($("#mul_type").length) { $("#mul_type").val(1); } if(next.length) { //next.attr('disabled', false); } } else { //子选项取消时,处理一下父级选项 var num = 0; $("." + name + "-" + self.val()).each(function() { if($(this).get(0).checked == true) { num = 1; } }); if(num == 0) { self.get(0).checked = false; if($("#mul_type").length) { $("#mul_type").val(0); } } if(next.length) { //next.attr('disabled', true); } } }) if($(this).get(0).checked == true) { self.get(0).checked = true; } }); }) } } //直接编辑 function edit_col() { if($(".edit_col").length) { $(".edit_col").each(function() { $(this).bind('blur', function() { var self = $(this); var col = $(this).attr('data-col'); var key = $(this).attr('data-key'); var table = $(this).attr('data-table'); var url = $(this).attr('data-url'); var id = $(this).attr('data-id'); var html = $(this).attr('data-content'); var value = self.val(); if(!value) { alert('不能为空'); return; } if($(this).find(".edit-content").length) { $(this).find(".edit-content").html(value); } else { self.attr('data-content', value); } //self.html(value); $.post(url, {key:key,table:table,value:value,where_id:id,col:col}, function(t) { notice('修改成功'); //preview(); /* if(type && type == 'textarea') { self.html(t); } */ }) }); }) } } /** * 处理双击编辑 */ function edit() { edit_col(); if($(".edit").length) { $(".edit").each(function() { $(this).bind('dblclick', function() { var col = $(this).attr('data-col'); var key = $(this).attr('data-key'); var table = $(this).attr('data-table'); var url = $(this).attr('data-url'); var id = $(this).attr('data-id'); var html = $(this).attr('data-content'); var type = $(this).attr('data-type'); if($(this).find(".edit-content").length) { html = $(this).find(".edit-content").html(); html = html.replace('', '>'); } if(html.indexOf('input') == -1) { if(type && type == 'textarea') { $(this).html(''); } else { $(this).html(''); } var self = $(this); self.find("#edit").blur(function() { var value = self.find("#edit").val(); if(!value) { alert('不能为空'); return; } if($(this).find(".edit-content").length) { $(this).find(".edit-content").html(value); } else { self.attr('data-content', value); } self.html(value); $.post(url, {key:key,table:table,value:value,where_id:id,col:col}, function(t) { notice('修改成功'); preview(); /* if(type && type == 'textarea') { self.html(t); } */ }) }) } }); }) } } function preview() { if($("#preview").length) { var time = Date.parse(new Date()); var src = $('#preview').attr('src').split('#'); $('#preview').attr('src', src[0] + '&' + time + '#' + src[1]); } } function del() { if($(".oper_6").length) { $(".oper_6").each(function() { var href = $(this).attr('href'); $(this).attr('href', '#'); $(this).unbind('click'); $(this).bind('click', function() { del_act(href); }); }) } } /** * 处理删除 */ function del_act(href) { if(confirm('确定进行此项操作吗?')) { $.getJSON(href + '?json=1&callback=?', {}, function(t) { msg(t); }) } } /** * 处理特殊加载的按钮 */ function load(href) { if(confirm('确定进行此项操作吗?')) { if(href.indexOf('&') == -1) { href += '?json=1&callback=?'; } else { href += '&json=1&callback=?'; } $.getJSON(href, {}, function(t) { msg(t); //location.reload(); }) } /* showAlert('确定进行此项操作吗?', function() { $("#dever_modal_no").click(); $.getJSON(href + '&json=1', {}, function(t) { msg(t); }) }); */ } /** * 处理特殊加载的按钮 */ function jump(href) { location.href = href; } /** * 处理change */ function change() { if($(".change").length) { $(".change").each(function() { var key = $(this).attr('data-child'); /* $('.' + key).each(function() { if($(this).find('select option:selected').val()) { $(this).show(); $('#set_cate_id_child').get(0).value = $(this).attr('parent'); } }); */ $(this).change(function() { $('.' + key).hide(); var v = $('.' + key + '_' + $(this).val()); var s = v.find('select'); s.change(function() { $('.' + key + '_value').val($(this).val()); }) if(v.length) { $('.' + key + '_value').val(s.val()); v.show(); } else { $('.' + key + '_value').val(-1); } }); if($(this).val() > 0) { $(this).change(); } }); } } /** * 处理图库系统 */ function image() { if($(".dever-note").length) { $(".dever-note").each(function() { var key = $(this).attr('key'); $(this).inlineattachment( { uploadUrl: config.upload + '.drag?key='+ key }); }); } if($(".image_upload").length) { $(".image_upload").each(function(i) { var parent = $(this).parent().parent(); //alert(parent.attr('id')); if(parent.attr('id') && parent.attr('id').indexOf('-child-0') != -1) { return; } loadUpload(i,$(this),$(this).attr('key'),config.upload + '.start', config.lib + 'upload/');//三个参数说明1:第几个上传框2:文件对象3:图片的基本配置标题 }) } } /** * 修改密码 */ function pass(e) { var html = '
'; html += '
旧密码:
'; html += '
新密码:
'; html += '
'; $('#dever_modal_body').html(html); $('#dever_modal_title').html('修改密码'); $("#dever_modal_yes").unbind('click').bind('click', function() { var old_password = $("#edit_old_password").val(); var new_password = $("#edit_new_password").val(); if(!old_password || !new_password) { alert('请输入密码'); return; } if(old_password == new_password) { alert('旧密码和新密码相同'); return; } $.post(config.host + 'auth.password', {old:old_password,new:new_password}, function(t) { alert(t); $("#dever_modal_no").click(); }) }) } var MSG = []; /** * 打开弹窗 */ //function showMsg(title, e, id, func) function showMsg(title, e, id, func) { if(id.indexOf('http://') == -1) { if($(id).length) { var html = $(id).html(); if($(id).html()) { var html = $(id).html(); MSG[id] = html; $(id).html(''); } else { var html = MSG[id]; } } else { var html = id; } $('#dever_modal_body').html(html); $('#dever_modal_title').html(title); if(func) { $("#dever_modal_yes").unbind('click').bind('click', func); } } else { if(e) { data = e.attr('msg-send'); } $.getJSON(id+'?json=1',{data:data},function(t) { t = t.data; $('#dever_modal_body').html(t); $('#dever_modal_title').html(title); if(func) { $("#dever_modal_yes").unbind('click').bind('click', func); } }); } } function updateMsg(id) { $("#"+id).submit(); } function showAlert(msg, func) { //$("#dever_modal_no").click(); $("#dever_modal").modal(); $('#dever_modal_body').html(msg); $('#dever_modal_title').html('提醒您'); if(func) { $("#dever_modal_yes").unbind('click').bind('click', func); } else { $("#dever_modal_yes").unbind('click').bind('click', function(){$("#dever_modal_no").click()}); } } /* var test = { refreshPage: false, addAjaxFlag: true, //添加收藏 add: function(cfg) { } } */ function showToggle(e) { var id = e.attr('toggle'); var child = e.attr('toggle_child'); var parent = e.parent(); parent.parent().find('li').removeClass('active'); parent.addClass('active'); $(child).fadeOut(100); $(id).fadeIn(500); loadEditor($(id).find('.editor')); } function select_mul(level, id, url, name, value, valid, w, num) { if(level == 0) { $(id).find('select').remove(); $(id).find('span').remove(); return; } var parent = value.split(','); var cur = parent[0]; parent.remove(cur); value = parent.join(','); var html = ''; var old = level; if(level != -1) { if($(id + '_' + level).length) { level = $(id + '_' + level).val(); } if(level == 0) { $(id + '_' + old).nextAll('select').remove(); $(id + '_' + old).next('span').nextAll('span').remove(); if($('#' + name + '_level_value').length) { var total = $(id).find('select').length; $('#' + name + '_level_value').val(total); } if(old == -2 && $('#' + name + '_value_value').length) { $('#' + name + '_value_value').val(level); } return; } if(old == -2) { $(id + '_' + old).nextAll('select').remove(); $(id + '_' + old).next('span').nextAll('span').remove(); } if($('#' + name + '_value_value').length) { $('#' + name + '_value_value').val(level); } } var total = $(id).find('select').length; if(num > 0 && total >= num) { return; } var get = url.replace('{level}', level); if(level == -1) { level = -2; } if(!$(id + '_' + level).length) { $.getJSON(get + '&json=1', function(t) { var check = ''; if(!t.status) { html = '  '; $(id).append(html); $(id + '_' + level).change(); } else { $(id + '_' + old).nextAll('select').remove(); $(id + '_' + old).next('span').nextAll('span').remove(); } if($('#' + name + '_level_value').length) { var total = $(id).find('select').length; $('#' + name + '_level_value').val(total); } if($('#' + name + '_up_value').length) { $('#' + name + '_up_value').val($(id + '_-2').val()); } }); } } //处理更新页面的一些功能,写到一起吧 var dever_update = { addIndex : 2, index : [], auto : false, save_key : '', init : function() { var self = this; // 增加整个更新的表单 if($(".dever_update_add").length) { $('.dever_update_add').unbind('click').bind('click', function() { self.add($(this)); }) } /* 以后再增加 同时更新另外一个表 if($(".form-add-content").length) { var url = config.host + 'auth.password'; var url = 'http://localhost/dever/manage/?database.update?key=weixin&table=message&menu=weixin&menu_id=39&ajax=1'; $.get(url, function(t) { $(".form-add-content").html(t); init(); }) } */ //增加某一部分表单 if($(".dever_form_add").length) { $('.dever_form_add').each(function() { var key = $.attr('toggle_key'); if(typeof(self.index[key]) == "undefined") { self.index[key] = 0; } $(this).unbind('click').bind('click', function() { self.append($(this)); }) }) self.del(); } // 开启自动保存 if($("#struct").length) { var save = $("#struct").attr('save'); if(save == 'yes') { //检测 self.save_key = location.href + 'test'; self.check(); } } if($('.dever-note').length) { $('.dever-note').each(function() { var mditor = new Mditor($(this),{ fixedHeight:true }); mditor.openPreview(); }) } }, save : function() { //var data = $("#data-1").html(); var data = []; $(".update_value").each(function(i) { if($(this).attr("update_type") == 'checked') { data[i] = $(this).get(0).checked; } else if($(this).attr("update_type") == 'html') { data[i] = $(this).html(); } else if($(this).attr("update_type") == 'src') { data[i] = $(this).attr('src'); } else { data[i] = $(this).val(); } }); store.set(this.save_key, data.join('|||')); //console.info(data); }, recover : function() { if(confirm('确定恢复上次保存的数据吗?')) { var data = store.get(this.save_key).split('|||'); if(data) { var value = $(".update_value"); for(var k in data) { var e = value.eq(k); if(e.attr('update_type') == 'checked') { if(data[k] == 'true') { e.get(0).checked = true; } else { e.get(0).checked = false; } } else if(e.attr('update_type') == 'html') { e.html(data[k]); } else if(e.attr('update_type') == 'src') { e.attr('src', data[k]); } else { if(e.attr('id')) { var id = e.attr('id'); if(typeof(editors[id]) != "undefined") { editors[id].setContent(data[k]); } } e.val(data[k]); } } store.set(this.save_key, ''); this.check(); } } }, check : function() { var data = store.get(this.save_key); var self = this; if(data) { $(".dever_save").unbind('click').bind('click', function() { self.recover(); }).show(); } else { $(".dever_save").hide(); self.auto = setInterval(function(){self.save()}, 3000); } }, del : function() { var self = this; if($(".dever_form_delete").length) { $('.dever_form_delete').each(function() { $(this).unbind('click').bind('click', function() { var parent = $(this).parent(); var id = parent.attr('id'); var index = parseInt($('#tab-' + id).attr('toggle_id')); var key = $('#tab-' + id).attr('toggle_key'); if(index <= 1 && self.index[key] <= index) { } else if(index <= 1 && self.index[key] > index) { index = index+1; $("#tab-"+key+"-child-" + index).click(); } else { index = index-1; $("#tab-"+key+"-child-" + index).click(); }; $('#tab-' + id).parent().remove(); parent.remove(); }) }) } }, append : function(e) { var self = this; var key = e.attr('toggle_key'); var child = '.dever_'+key+'_child'; if(typeof(self.index[key]) == "undefined") { self.index[key] = 0; } if(self.index[key] <= 0) { self.index[key] = $(child).length; } if(self.index[key] > 10) { alert('最多只能增加10条'); return; } var p = e.parent(); var id = key + '-child-' + self.index[key]; var name = '第' + (self.index[key]) + '条'; p.before('
  • '+name+'
  • '); var e = e.parent().parent(); var n = e.next(); var p = e.parent(); var content = n.html(); content = content.replaceAll('_c_', '_c_' + self.index[key] + '_i_'); content = ''; p.append(content); self.del(); //$("html,body").animate({scrollTop:$('.dever_form_add_child').eq(this.appendIndex).offset().top},500); self.index[key]++; image(); loadShow(); autocomplete(); change(); }, add : function(e) { var self = this; var p = e.parent(); var id = 'data-' + this.addIndex; var name = '新增数据-' + (this.addIndex-1); p.before('
  • '+name+'
  • '); var content = $("#myTabContent").find('.tab-pane').eq(0).html(); content = content.replaceAll('update_', 'update_' + this.addIndex + '__'); content = '
    ' + content + '
    '; $("#myTabContent").append(content); $('#update_' + this.addIndex + '__where_id').val('-1'); this.addIndex++; } } String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) { if (!RegExp.prototype.isPrototypeOf(reallyDo)) { return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith); } else { return this.replace(reallyDo, replaceWith); } } Array.prototype.remove = function(val) { var index = -1; for(var i = 0; i < this.length; i++) { if(this[i] == val) { index = i; } } if (index > -1) { this.splice(index, 1); } }; $.fn.pasteEvents = function( delay ) { if (delay == undefined) delay = 20; return $(this).each(function() { var $el = $(this); $el.on("paste", function() { $el.trigger("prepaste"); setTimeout(function() { $el.trigger("postpaste"); }, delay); }); }); }; $("textarea").on("postpaste", function() { if($(this).val().indexOf('<') != -1) { $(this).val(toMarkdown($(this).val())); } }).pasteEvents();