// 选中的地区集合 var selectArea = [] var selectAreaCity = [] var selectAreaNow = null var keyAllArr = [] /* 切换市区显示 */ function toggleDialog(f) { if(f) { $(".dialog").show() }else { $(".dialog").hide() } } /* 添加市Span */ function showMoreCity (arr) { var box = $('.dialog>.select-area-box') var tempHTML = '' box.html(tempHTML) tempHTML += '全省'; console.log('--arr--', arr) arr.forEach(function (value) { console.log('--value--', value.name) tempHTML += '' + value.name.replace(/市$/g,'') + '' }) box.html(tempHTML) } /* 省地区选中 */ $(document).on('click','span.select-area', function () { var dom = $(this) var t = dom.text() if(t === '全国'){ return addDelBox(t,'#area-del') } if(t === '全省'){ t = selectAreaNow; } /* 判断来源 */ var f = dom.parent().parent().hasClass('dialog') if(f) { if(selectAreaCity.indexOf(t) !== -1) { selectAreaCity.splice(selectAreaCity.indexOf(t),1) } else { selectAreaCity.push(t) } dom.toggleClass('select') return true } else { if(t !== selectAreaNow) { selectAreaCity = [] } selectAreaNow = t } /* 展开市级 */ dom.siblings().removeClass('click') var area = null chinaMapJSON.some(function (value) { var f = value.name.indexOf(t) !== -1 if (f) { area = value } return f }) if(area.ProRemark !== '直辖市') { var top = ["安徽", "北京", "重庆", "福建", "广东", "广西", "贵州", "甘肃", "河北", "湖北", "黑江", "海南", "河南", "湖南", "吉林", "江苏", "江西"] if(top.indexOf(t) !== -1) { $(".dialog").addClass('top') } else { $(".dialog").removeClass('top') } dom.addClass('click') toggleDialog(true) showMoreCity(area.city) } else { addDelBox(t,'#area-del') toggleDialog(false) } }) /* 删除地区标签 */ $(document).on('click','.delete-close>i',function () { var dom = $(this).parent() var arr = dom.attr('data-arr') var index = dom.index() window[arr].splice(index,1) dom.remove() }) /*移除delBox*/ function removeDelBox(select) { $("#area-del").find("div[data-arr='selectArea'][data-val='全国']").remove(); if(select=="全国"){ $("#area-del").html(""); }else if (select=="全省"){ }else{ } } /* 添加可删除标签 */ function addDelBox(str,box,arr,template){ // removeDelBox(str); // console.log('--template,arr--', template,arr) arr = arr || 'selectArea' var tempKey = arr ? 'data-arr="'+arr+'"' : '' var dataVal = 'data-val="'+str+'"'; template = template || '
'+str+'
' var tempArr = window[arr] if(!Array.isArray(tempArr)) { window[arr] = [] tempArr = window[arr] } if(tempArr.indexOf(str) === -1) { var pDom = $(box) var tempHTML = pDom.html() + template pDom.html(tempHTML) tempArr.push(str) } } /* 确定选中 */ function areaSelect (f) { if(f) { selectAreaCity.forEach(function (value) { addDelBox(value,'#area-del') }) } else { selectAreaCity = [] } $("span.select-area").removeClass('click') selectAreaNow = null toggleDialog(false) } /* 输入事件 */ $(".user-input input").on('input',function () { var dom = $(this) var f = dom.val().length > 0 if(f) { dom.next().show() } else { dom.next().hide() } }) /* 生成子标签 */ function createCKey(title,arr,clazz) { if(arr.length === 0) { return '' } var all = arr.map(function (value) { return ''+value+'' }).join('') return '
'+title+':
'+all+'
' } /* 添加关键词标签 */ function createKeyBox(t) { var appArr = appendArr var exArr = excludeArr var key = t var all = createCKey('关键词',[key],"key") + createCKey('附加词',appArr,"app") + createCKey('排除词',exArr,"ex") var template = '
'+all+'
' return template } /* 添加可删除Input标签 */ function addDelInput(t,type) { var text = $(t).prev().val() // console.log('--text--', text) var box = 'inputDel_' + type var template = null var arr = box switch (type) { case 0: { template = createKeyBox(text) box += ' .column:eq('+(keyAllArr.length % 3)+')' keyAllArr.push({ name: text, append: appendArr, exclude: excludeArr }) appendArr = [] excludeArr = [] $(".add-input-w input.sm").remove() break } case 1:{ break } case 2:{ break } } $(t).prev().val('') $(t).hide() addDelBox(text,'#'+box,arr,template) } /* 添加排除/附加词 */ var excludeArr = [] var appendArr = [] function addOtherInput(t,f) { var temp = f ? '请输入附加词' : '请输入排除词' var input = document.createElement('input') input.className = 'sm' input.placeholder = temp // console.log('--$(input)--', $(input)) if(f){ var l = appendArr.length $(input).on('input',function () { appendArr[l] = $(this).val() }) }else { var l = excludeArr.length $(input).on('input',function () { excludeArr[l] = $(this).val() }) } $(t).before(input) } /* 关键词标签点击修改 */ var nowSpan = null $(document).on('click','#inputDel_0 .title-other>span',function (e) { var xy = $(this).offset() // console.log('--xy--', xy) var x = xy.top + 30 var maxY = $(document).width() - 600 var y = maxY < xy.left ? maxY : xy.left nowSpan = $(this) // console.log('--$(this).offset()--', xy) var text = $(this).text() $('.edit-user-input').children('.up-icon').css({ left: xy.left - y + 'px' }) $('.edit-user-input').css({ top: x + 'px', left: y + 'px' }).show().children('input').val(text) // console.log('--text--', text) }) /* 修改关键词标签文字 */ $(".edit-user-input").click(function (e) { e.stopPropagation() e.preventDefault() }) $('.conditions-box').click(function () { hideEdit() }) function hideEdit () { $('.edit-user-input').hide() $(".edit-user-input input").val('') } function editInput(t,f){ var dom = $(t) var text = $(t).siblings('input.sm').val() if(f) { nowSpan.text(text) } else { nowSpan.remove() } hideEdit() } /*行业筛选*/ //industryScreening($(".industry .industry-content"), $(".industry-content .parent-node"), $("#induAll"), $(".industry .stop")) /* * warpContent 外层元素 * parentNode 标题父元素 * allBtn 全国按钮 * moreBtn 展开更多(没有功能可以不写) */ function industryScreening(warpContent, parentNode, allBtn, moreBtn) { var $content = warpContent, $moreBtn = moreBtn || "", $parentNode = parentNode, $induAll = allBtn; /*更多显示 影藏*/ if($moreBtn !== "") { /*影藏行业*/ $content.children().not(".parent-node").hide(); $moreBtn.on('click', function() { $(this).toggleClass("up"); if($(this).hasClass("up")) { $(this).text("收起"); $content.children().show(); } else { $(this).text("更多"); $content.children().not(".parent-node").hide(); } }); } /*全选功能*/ $content.on('click', 'font:not(".parent-node")', function() { /*子级全选添加类名*/ var $preChdlren = $(this).prevAll(".parent-node:eq(0)").nextUntil(".diver"); var $prevNode = $(this).prevAll(".parent-node:eq(0)"); $(this).toggleClass("active"); if($prevNode.nextUntil(".diver").filter(".active").length === 0) { $prevNode.removeClass("active").removeClass("secondActice"); } else if($prevNode.nextUntil(".diver").filter("font").length === $prevNode.nextUntil(".diver").filter(".active").length) { $prevNode.addClass("active").removeClass("secondActice"); } else { $prevNode.removeClass("active").addClass("secondActice"); } }); $parentNode.on('click', function() { $(this).toggleClass("active").removeClass("secondActice"); var $nextALLChildren = $(this).nextUntil('.diver'); if(!$(this).hasClass('active')) { $nextALLChildren.removeClass('active'); } else { $nextALLChildren.addClass('active'); } }); /*如果点击没有内容给全部添加类名*/ $content.on("click", "font", function() { if($content.children().hasClass("active")) { $induAll.removeClass("active"); } else { $induAll.addClass("active"); } }) /*全部点击*/ $induAll.on("click", function() { $(this).addClass("active"); $content.children().not($(this)).removeClass("active secondActice") }) };