京东标题技术
V:ads1994y
Q:485591720
|
' }% F% v6 l& d2 f' g" D3 B! R
将检测标题入口开始转化为关闭
% H. u( |1 K1 c0 X" x
- E$ v, W2 J* [. s//敏感词入口关闭需求
* J0 Y6 |. r8 v& F. a6 C, L. s initTitle: function() {
- F, Z+ t% {8 l5 _8 b/ T if($("#info-attr").closest(".J-con").find(".J-drag").find('.J-model-name')[0].innerText=="商品属性"){//商品属性
& ~+ i3 b `3 \4 O) h% w# ]3 G /* if(!globalAttr.isMedicine){
5 f" J. T S. d $("#info-attr").closest(".J-con").find(".J-drag").append('<p class="title-right">' +
5 |3 \5 A) ^& G- Q: U* D4 A this.$t('user.widget_ware_attr.attrNotBusinessNeed')+
* X* ~$ c4 j; P' Q i% c8 e9 h '<a href="/rest/shop/wareAttriBackRest/toAttriPage/' + globalAttr.categoryId1 + '/' + globalAttr.categoryId2 + '/' + globalAttr.categoryId3 +
1 I F0 }" `9 A* K F# A6 O '" target="_blank">'+this.$t('user.widget_ware_attr.clickFeedback')+'</a>' +
' F r4 }; [: ~' u' Y- M$ H '</p>');9 y2 n1 I8 |: H" {
};*/
& M e- }9 J4 y- B2 I, j* r V F $("#info-attr").closest(".J-con").find(".J-drag").append('<div style="float: right;margin-right: 222px"" class="tipEffect3" clstag="pageclick|keycount|newWare|43"><img src="/common/images/effect.png"/ class="eye"><span class="effect">'+this.$t('user.widget_ware_attr.showResults')+'</span></div>')
1 S. a8 y& `$ d# k' W }
+ a# i3 C3 {( v8 v9 e" e2 o4 C3 J },- e* C+ I: x% K
showImg: function(src){
0 a% `$ F4 V0 |( s5 Z this.tipImg = src; G( ?4 i4 Z6 B8 ~8 ]) L, m8 E3 F
},% O1 \$ s9 h. @
loadCategoryAttrList: function () { s2 l" w3 [1 E% D8 S! B
var _this = this;4 I% H/ W/ T' ^' C' s: s
shopLayer.lockWindow();
+ L7 ?8 p. F+ Z3 I* t/ ^: l, B% O var subData=""; n' G& G& V- n' t
if(this.lastCategoryId){ ]& N: a; B, f6 i) O9 w
subData=this.lastCategoryId;( @8 `1 V, N( V
}else{
) Y" j" {% Z2 D4 L& S- d subData=this.catId;* ]: N# j( U6 |, Y2 |5 K" H
}
* E! g% f7 z" N% Q# t4 U4 x PublishApi.loadCategoryAttrList(subData, function (res) {
7 ]5 w: l$ r) T( r2 c shopLayer.unlockWindow();- C/ {2 c1 @2 m7 r! N* U2 G5 w
if (res.status == 200) {
}+ t& }+ C" @3 ]) o1 ` res.data.forEach(function (group) {5 a$ u& V! l, j/ c
group.catAttrList.forEach(function (attr) {7 Q' ?# |7 |9 X- m$ E5 C. [& t5 C
if(attr.inputType==2&&attr.attrValueList.length>5){
( z6 K5 T8 S% `2 T7 ^: w6 C attr.attrValueList.forEach(function(item){9 [* E4 L! o0 X6 b6 P
item.actions = false;* x4 k" P6 [' G: q
})
& C i( L! L2 o }
6 v/ N: D* D1 E' b attr["choseName"]=false;: e* D+ W0 I0 _# \/ _8 W& @' i7 P
attr["tipwarn"]="";: x, J( `' V; ?6 S) H# }9 f1 g/ X
attr["choseNum"]=[];
, q% g, S" H2 v- q //添加空数组存4 _3 R( y( A. j, v/ N
if(attr.inputType==2){
. w- f: p% ^3 _0 \ attr.checkedName=[];) U" S8 c, E0 Q- C8 [: {6 J- Q$ S
attr.checked=false;
7 m: F' |6 y# ^2 I }. t! z/ R! g; Y1 I
});& i( F7 b3 W8 j; s7 `. r
})' L% h% k& V I }8 k. y: d
var categoryGroupList = res.data;! z* K D {" @. _
categoryGroupList.forEach(function (group) {
. S; Q1 W n1 h9 O l var titShow = false;5 E; `' ]; {7 `. M. ^
group.catAttrList.forEach(function (attr) {5 L8 u0 h, r1 A7 I% c) P
attr.val = []; // 默认值
. m" I- h5 |) Q, ^% i0 ~) f // 构造验证规则
4 t* u6 ~; e5 N2 M$ j5 c attr.rule = [{$ A3 C0 G% p; C2 T
required: attr.required,
7 a2 i8 A* f! S9 f! h# o message: _this.$t('user.widget_ware_attr.enterTheValue')
5 E# e4 B( m% j4 e6 ?% g3 o7 v }];
, R8 f/ {- c1 B! T! g, U
" }: a0 V( ?' V B if(attr.featureMap && attr.featureMap.attrLevel === '1'){& {; A# V; l1 X% ~; B% C, z) j
attr.show = false;: ?* N6 G* n# e+ ~7 k8 Y$ s
}else{
% v0 u( ^" Q7 N attr.show = true;
- \& _/ z. P4 I- W6 S titShow = true;3 I0 K' L' I1 N5 G" B$ h7 E% H. }, M
}6 j3 H: w J4 s; a, B; R- V7 b
. _, T: q/ [6 S% l4 } // 回显取值字段5 K: m: w2 n7 W8 I7 E' a
_this.attrType[attr.categoryAttributeId] = 0;3 s* p6 e4 K+ C! N3 L) S
if(attr.inputType == 1 || attr.inputType == 2){
7 p0 o( w- x1 w6 T: I- a/ H _this.attrType[attr.categoryAttributeId] = 1;# A+ Z' h, F( X _ K- ?( F
}6 b- k4 R: j4 _3 c) G1 V, T
/ `* [( v M9 f, P attr.errMsg = "";3 [, r0 P/ ?! W; K5 o) c$ y
* C$ L. M: ?) z( L* F F, V. n' d9 X
if(!attr.features){$ l9 z& I% }$ K, l
return;1 J% L0 Y% F' D8 s* u
}, @3 v% ] r1 @
" d. P# S& y; u! y! F
if(attr.features.indexOf("xznum")>-1){
0 i: A8 y: v7 Z- V$ y& h! ?& N attr.rule.push({
0 O! w* `$ D. G! y' X0 @ pattern: /(^[1-9](\d+)?(\.\d{1,2})?$)|(^0\.[1-9])|(^0\.\d[1-9])/,6 w4 W1 o6 I; I
max: parseInt(attr.featureMap.xznum),# r+ c( Q% y" y, V
message: _this.$t('user.widget_ware_attr.onlyNum')+ attr.featureMap.xznum
2 E, u( V* p$ M' V r });
( y) e& O; x% K } else if(attr.features.indexOf("xzns")>-1){5 I+ a) u: [# Y- b" _3 B! J% g7 \" W
attr.rule.push({
+ w; M. [' K( _ pattern: /^[A-Za-z0-9]*$/,
b; \) I& ~2 J, V: v% ]% I max: parseInt(attr.featureMap.xzns),
3 @3 i2 M5 J/ I4 \2 K) o" C, D message: _this.$t('user.widget_ware_attr.onlyCharactersAndNumbers')+ attr.featureMap.xzns
# n' V! ?% W) U3 { });
! ~* w |. F' s' S7 i6 o) B, O( S0 L } else if(attr.features.indexOf("xzchi")>-1){
2 v2 K9 A! p0 p7 o4 M attr.rule.push({
; K- ^* Q A" \8 w pattern: /^[\u4e00-\u9fa5]*$/,8 E& D7 d# l* P8 N7 T, }
max: parseInt(attr.featureMap.xzchi),* e/ \: Q( l* _3 J" k6 H* z# x+ t
message: _this.$t('user.widget_ware_attr.onlyChinese')+ attr.featureMap.xzchi* Z' T0 Q* ^4 K( \$ k0 w% G% l* {
});& H3 g: F0 A0 ^+ Y
} else if(attr.features.indexOf("xzstr")>-1){5 {" f! L2 a% T. t! E8 H- G: o s
attr.rule.push({
' p! x" N) H; i' b- x max: parseInt(attr.featureMap.xzstr),
2 X- z2 G Y, f" p7 j message: _this.$t('user.widget_ware_attr.overLength') + attr.featureMap.xzstr
! f" X0 y7 C. i* i/ c# M7 A) v });- H* O7 f+ u2 c& z! a& C2 K
}
! z& s& U- K2 D! Y t G" V! {% g });6 i0 A1 q7 Z' C; H# g; {
group.titShow = titShow;6 Q# x% i6 ~ m5 n7 P1 e/ a6 _
});$ f' B. n% ^) N: M
1 ] t( I# X3 M; p" {* T) [9 n ^! F
$ y+ p% k& `4 F% n |& \, U
2 o" {: H/ Y9 H$ q g) p- Q' k- j- O//构造响应函数0 P, l$ `" [& Z# x
2 C3 q2 y" K% B6 ~9 p4 I+ V/ c$ H' d (function () {5 s' F9 w. q, |' t, ^5 n e
7 G+ ~7 i$ Z* [
// 获取 wangEditor 构造函数和 jquery
3 Z6 Z& ]# n6 Y8 O var E = window.wangEditor;
; e& w" @- d4 A. U. |9 P var jQuery = window.jQuery;- K- j$ S+ b' W# B+ m. H
//wangEditor编辑器实现多语言) |3 D/ B( w2 J# ~+ ~1 J
if (i18nUtil.getCurrentLocale()&&E.langs[i18nUtil.getCurrentLocale()]) {: B9 @# i# L9 V8 r6 b- p& l6 G
E.config.lang = E.langs[i18nUtil.getCurrentLocale()];
, {; O% @ ?* D }9 M: f; A' h, T# E5 u1 H: i
// 用 createMenu 方法创建菜单
5 g& z! ?+ e9 f# B8 u5 S4 [ E.createMenu(function (check) {
, z4 P' t6 P" @& A/ u; w
2 {6 m2 I1 A" C8 p // 定义菜单id,不要和其他菜单id重复。编辑器自带的所有菜单id,可通过『参数配置-自定义菜单』一节查看
& H6 _0 \- v0 l: O7 J( {& k5 _& V var menuId = 'hanyi';8 ?9 I; c8 Q& E- ^0 Z
& [$ H' r8 a: }2 ]) K+ D- E // check将检查菜单配置(『参数配置-自定义菜单』一节描述)中是否该菜单id,如果没有,则忽略下面的代码。
- W/ |1 L/ j7 v6 j if (!check(menuId)) {
* A! M1 u; ]7 ^* N6 z" V return;
6 T& y$ K; L- Y" Q: T0 G. |+ R$ |: c }% q7 y/ v* q! _' q8 g) Q! }& T" `
2 H& p ^; m6 G: k ~3 l
// this 指向 editor 对象自身. N3 w7 x: Y- D4 C# P7 U ~4 v
var editor = this;
9 _6 l3 W% n5 E" M9 w+ t! n) V0 J) y$ k8 l
// 创建 menu 对象
0 Y6 }8 J+ Q5 } var menu = new E.Menu({
$ S1 ?2 S7 R8 x5 j8 J# h+ X editor: editor, // 编辑器对象
8 F& x V$ P( W; h8 @: n# r3 _- b id: menuId, // 菜单id
% ?# J2 T* h- g R, ?! v8 s+ [ title: E.config.lang.hanYiCharacter, // 菜单标题2 S; E" P% n# \* S/ {
commandName: 'fontName', // 命令名称
* ?/ R! b& ^$ F0 L- v. {2 M1 `- L5 C, y/ m
// 正常状态和选中装下的dom对象,样式需要自定义. x4 S; c$ J6 f7 `1 i7 {2 e, c7 [
$domNormal: jQuery('<a href="#" tabindex="-1"><i class="wangeditor-menu-img-font2"></i></a>'),' X+ H1 ?( u. i- m7 i% k _
$domSelected: jQuery('<a href="#" tabindex="-1" class="selected"><i class="wangeditor-menu-img-font2"></i></a>'). i5 e& V5 ^4 a: C/ [
});* X8 k# j+ t. g9 k2 ^
! M4 D6 L& A; m2 `' G
// 定义 update selected 事件7 {& w" e1 E. c+ ]
menu.updateSelectedEvent = function () {
- R5 |" R' n4 n' J: l var rangeElem = editor.getRangeElem();1 k3 p" J; u& j8 H4 B& f
rangeElem = editor.getSelfOrParentByName(rangeElem, 'font[face]');
9 B. C: j2 `# H1 I1 s* L% e if (rangeElem) {
O8 m+ Y, G; x, ] return true;
5 [) x- E* U$ r; f% X0 z }
" i7 @2 A8 i% t& a7 o6 h return false;- x* F; ?$ B+ r: I J2 [
};
9 H& Z5 k) t6 g H) n/ Y9 V! u7 c5 Z& q. J7 `4 t3 u% ?! |; G2 r
2 j, c2 }- v$ x0 V
1 ?9 k( F- J9 [% p1 H7 H( O& u6 i$ a
2 X$ k2 w: e/ L: ~* J
c8 d: R2 y1 X; v5 D. N P$ _5 C+ V0 A& M( R, }7 E/ x
|
评分
-
查看全部评分
|