/g,"").replace(/\//g,""),typeof clickList=="object"){let time=calculateVisitTime();event.isTrusted?clickList.push({lastClickDom,time,type:"User manual click"}):clickList.push({lastClickDom,time,type:"Program click"}),clickList=clickList?JSON.stringify(clickList).substring(0,2e3):[]}},!0),window.addEventListener("error",function(e){if(isBlocked)return!1;stringToLower(e.target.tagName)==="img"&&e.target.src&&holderFile(e.target.src)?loadFailed.filter(item=>item.src===e.target.src).length===0&&loadFailed.push({type:"img_load_error",src:e.target.src}):stringToLower(e.target.tagName)==="script"&&e.target.src&&holderFile(e.target.src)?loadFailed.filter(item=>item.src===e.target.src).length===0&&loadFailed.push({type:"js_load_error",src:e.target.src}):stringToLower(e.target.tagName)==="link"&&e.target.href&&holderFile(e.target.href)&&loadFailed.filter(item=>item.src===e.target.href).length===0&&loadFailed.push({type:"css_load_error",src:e.target.href})},!0),window.onerror=function(errorMessage,scriptURI,lineNumber,columnNumber,errorObj){if(!scriptURI&&!errorObj||scriptURI&&scriptURI.indexOf("chrome-extension")!==-1||isBlocked)return;if(errorObj){const securityError=/SecurityError/i.test(errorObj),getItemError=/getItem/i.test(errorObj),setItemError=/setItem/i.test(errorObj),serviceWorkerError=/evaluating 'navigator.serviceWorker.register'/i.test(errorObj);if(securityError||setItemError||getItemError||serviceWorkerError)return}const hasSignificanceError=errorSignificanceMessageInfo.some(sign=>errorMessage.includes("Unexpected token "+sign)||errorMessage.includes("unexpected token"+sign)||errorMessage.includes("Unterminated string")||errorMessage.includes("Expected property name")||errorMessage.includes("Cannot convert undefined or null to object"));let networkSendStatus=!1;["4g","5g","wifi"].some(item=>navigatorConnection?.effectiveType.includes(item))&&!navigatorConnection?.saveData&&(networkSendStatus=!0),hasSignificanceError&&isChromeNeedCall&&networkSendStatus&&(console.log("%c"+`dom=${lastClickDom} message=${errorMessage}`,"background: rgba(130,189,174,0.8); color: #fff; font-size: 18px; padding: 2px 10px;"),errorSignificanceMessageArr.push({errorMessage,errorType:"significance",pageType:"",scriptURI:scriptURI?scriptURI.replace(/[?#].*$/,""):"",domMessage:lastClickDom,errorObj:errorObj.toString(),lineNumber,columnNumber,...otherInfo()}),lastClickDom=""),isChromeNeedCall&&(console.log("%c"+`dom=${lastClickDom} message=${errorMessage}`,"background: rgba(130,189,174,0.8); color: #fff; font-size: 14px; padding: 2px 10px;"),errorMessageArr.push({errorMessage,scriptURI:scriptURI?scriptURI.replace(/[?#].*$/,""):"",lineNumber,columnNumber,errorObj:errorObj.toString(),...otherInfo()}),errorMessageArr=errorMessageArr.filter(obj=>typeof obj.errorObj=="string"&&!obj.errorObj.includes("ReferenceError: Vue is not defined")&&!obj.errorObj.includes("SyntaxError: Unexpected end of JSON input")))},window.addEventListener("load",function(){let mergeErrorMessage=errorMessageArr.concat(errorSignificanceMessageArr);fileLoadFailedFun(),jsExceptionFun(mergeErrorMessage),setPageLoadTimestamp(),checkPageUrl()});function setPageLoadTimestamp(){document.body.setAttribute("data-load-time",(new Date).toLocaleString())}function abuttingJointFramework(c){if(c&&c.textStatus&&c.textStatus==="error"){let r={};r.handler=c.context.handler,r.errorObj=JSON.stringify(c.context.options),r.errorMessage=c.dataOrXhr.responseText,r.errorType="request error",r.pageType="",c.errorMessage&&monitorFrontError(r)}}function calculateVisitTime(){let endTime=new Date;return(endTime-startTime)/1e3+"s"}function checkPageUrl(){location.pathname.includes(location.protocol)&&typeof monitorFrontError=="function"&&monitorFrontError({errorMessage:"The current page pathname contains the protocol",pageUrl:window.location.href,warning_message_code:"dingtalk_front_pageurl_error"})}function fileLoadFailedFun(){loadFailed.length>0&&monitorFrontFilesFailed({filesInfo:loadFailed,...otherInfo()}).then(result=>{result&&fileLoadFailedRequestFun(result)}).catch(error=>{console.error(error)})}function fileLoadFailedRequestFun(loadFailedRes){let jqueryFailed=!1,loadFailedFileArray=[];if(loadFailedRes=loadFailedRes?JSON.parse(loadFailedRes):[],loadFailedRes.length>0){for(const k of loadFailedRes)k.src.includes("jquery-")&&k.type==="js_load_error"&&(jqueryFailed=!0),loadFailedFileArray.push(k.src);loadFailedFileArray=loadFailedFileArray.filter((item,index,self)=>self.indexOf(item)===index);let errorMessage=jqueryFailed?"The current page jQuery file does not exist":"Some resource files do not exist";monitorFrontError({errorMessage,pageUrl:window.location.href,pageType:jqueryFailed?"":"",files:loadFailedFileArray,...otherInfo()})}}function jsExceptionFun(errorMessageArr){for(const k of errorMessageArr)k.scriptURI.indexOf(location.origin)>=0&&getErrorSendTo("",k.lineNumber,k,!0)}function handleResourceError(errorMessage,resourceSrc){monitorFrontError({errorMessage,pageUrl:window.location.href,src:resourceSrc,...otherInfo()})}function getWebPageSource(url){return new Promise(function(resolve,reject){let xhr=new XMLHttpRequest;xhr.open("GET",url),xhr.onload=function(){xhr.status===200?resolve(xhr.responseText):reject("HTTP request failed with status code "+xhr.status)},xhr.onerror=function(){reject("Error fetching web page")},xhr.send()})}function processHtmlSourceCode(htmlSourceCode,targetLineNumber,pageTextType,info){if(pageTextType==="html"){const parser=new DOMParser,doc=parser.parseFromString(htmlSourceCode,"text/html"),lines=doc.documentElement.innerHTML.split(` `);getErrorSendTo(lines,targetLineNumber,info)}if(pageTextType==="js"){const lines=htmlSourceCode.split(` `);getErrorSendTo(lines,targetLineNumber,info)}}function getErrorSendTo(lines="",targetLineNumber=0,dataJson,notChecked=!1){let signNum=30,maxCodeLength=2e3;if(!notChecked){if(lines===""||targetLineNumber===0)return!1;if(lines!==""){let code="";for(let k=0;k{xhrRequestError({method:"POST",url:window.location.href,headers:{"Content-Type":"application/json","X-October-Request-Handler":"onGetFrontInfo","X-Requested-With":"XMLHttpRequest"},data:dataJson}).then(function(response){resolve(response)}).catch(function(error){console.error(error),reject(error)})})}function monitorFrontError(dataJson,isShow=1){xhrRequestError({method:"POST",url:window.location.href,headers:{"Content-Type":"application/json","X-October-Request-Handler":"onMonitorFrontError","X-Requested-With":"XMLHttpRequest"},data:dataJson}).then(function(){isShow&&showErrorNotification(dataJson.errorType||"JsError",dataJson.errorMessage)}).catch(function(error){console.error(error)})}function monitorFrontFilesFailed(dataJson){return new Promise((resolve,reject)=>{xhrRequestError({method:"POST",url:window.location.href,headers:{"Content-Type":"application/json","X-October-Request-Handler":"onMonitorFrontFilesFailed","X-Requested-With":"XMLHttpRequest"},data:dataJson}).then(function(response){let res=JSON.parse(response);for(const k in res)showErrorNotification("Some resource files do not exist",res[k].src);resolve(response)}).catch(function(error){reject(error)})})}function xhrRequestError(options){return new Promise(function(resolve,reject){var xhr=new XMLHttpRequest,header;if(xhr.open(options.method,options.url,!0),xhr.onload=function(){xhr.status>=200&&xhr.status<300?resolve(xhr.responseText):reject(xhr.statusText)},xhr.onerror=function(){reject(xhr.statusText)},options.headers)for(header in options.headers)xhr.setRequestHeader(header,options.headers[header]);options.data?xhr.send(JSON.stringify(options.data)):xhr.send()})}function holderFile(url=""){let isHolderArray=["dist/","assets/","files/"],isDomain=verifyAddressIsDomain({src:url});return isHolderArray.some(item=>url.includes(item))&&isDomain}function getCookieValError(name){var prefix=name+"=",end,value,start=document.cookie.indexOf(prefix);return start==-1?"":(end=document.cookie.indexOf(";",start+prefix.length),end==-1&&(end=document.cookie.length),value=document.cookie.substring(start+prefix.length,end),unescape(value))}function verifyAddressIsDomain(obj){if(obj?.src){let src=obj.src.toString(),origin=location.origin;return src.indexOf(origin)>=0}}function stringToLower(str){if(str)return str.toString().toLowerCase()}}catch(e){console.error(e)}休閒夾克|女性時尚 - vivi-look 台灣|流行時尚女裝 已加入購物車 會員登入收藏購物車所有商品新品上市人氣熱銷限時折扣特別企劃加一元 多一件上衣類T恤襯衫衛衣針織/毛衣細肩帶/背心風格支線清新學院風韓版優雅風可愛漫畫風百變休閒風洋裝類長洋裝短洋裝印花洋裝牛仔洋裝蕾絲洋裝針織洋裝吊帶褲套裝下著類寬褲長褲牛仔褲裙類內搭褲短褲外套類休閒夾克西裝外套罩衫風衣外套羽絨外套鞋子休閒鞋平底鞋高跟鞋靴子涼鞋內衣泳衣情趣內衣bra內衣內褲居家服/睡衣配件飾品包包墨鏡冰袖皮帶雨具/雨衣襪子圍巾/手套帽/披肩後跟貼 休閒夾克最新上架價格由低到高價格由高到低最高人氣知性亮眼百搭撞色皮邊時尚短款毛呢外套NT$1,365 (3)高質感百搭洋氣減齡夾克棒球服外套NT$1,214 (10)吸睛注目小香風撞色粗花流蘇短款休閒夾克NT$1,622 (427)Korea正韓撞色拼接束腰長袖輕便夾克外套NT$1,035 (8)休閑百搭洋氣連帽防曬薄款棒球服外套NT$900 (8)時尚小香風紋理感素面連帽寬鬆休閒夾克NT$1,409 (105)韓版時尚寬鬆設計感拼接棒球服拉鏈休閒夾克NT$1,210 (66)韓國風尚休閒素色連帽短款長袖拉鏈休閒夾克NT$1,437 (99)時尚休閒簡約立領拉鏈外套休閒夾克NT$1,383 (28)高端時尚日系素色連帽紐扣短款工裝休閒夾克NT$1,302 (31)超好搭配韓版素色羊羔毛無袖翻領坎肩休閒夾克NT$1,125 (305)韓國風尚獨特設計純色口袋裝飾拉鏈休閑夾克NT$1,466 (108)強檔驚喜優雅素色連帽單排釦口袋長袖寬鬆休閒夾克NT$898 (284)氣質微奢清新韓系素面圓領無袖羊羔毛休閒夾克NT$1,282 (71)簡約好搭個性時尚寬鬆拉鏈連帽衛衣外套休閒夾克NT$1,214 (26)百搭新款拼色毛絨襯衫女中長格紋加厚長袖毛呢襯衫外套NT$1,067 (113)必備百搭款韓版連帽內刷毛拉鏈中長休閒夾克NT$1,125 (32)超好搭配休閑連帽刷毛連帽派克服外套休閒夾克NT$2,132 (176)超好搭配秋冬新款時尚格紋連帽休閒夾克NT$1,189 (265)吸引視線韓版設計感字母慵懶風拉鏈連帽衛衣休閒夾克NT$1,118 (257)韓國風尚優雅素色顯瘦遮肉毛呢小香風外套斗篷休閒夾克NT$1,311 (33)提高時髦感超好搭配簡約皮衣圓領休閒夾克NT$1,214 (85)新品到貨簡約寬鬆素面圓領紐扣休閒夾克NT$900 (31)新登場受歡迎清爽幹練立領金屬裝飾小香風外套休閒夾克NT$1,571 (150)最受歡迎簡約顯瘦拉鏈連帽中長款休閑夾克NT$1,434 (114)韓國風尚超好搭配純色翻領廓形牛仔休閑夾克NT$1,331 (116)提高時髦感設計獨特立領口袋拉鏈套頭休閑夾克NT$1,323 (25)提高時髦感韓版寬鬆落肩袖翻領短款休閒夾克NT$900 (138)最受歡迎立領提花長袖拉鏈休閑夾克NT$1,035 (180)高端時尚獨特設計撞色拼接立領棒球休閑夾克NT$1,365 (160)韓國風尚獨特設計撞色拼接連帽休閑夾克NT$1,802 (153)超好搭配韓版簡約寬鬆連帽拉鏈衛衣休閑夾克NT$1,144 (125)韓國風尚絕對時尚撞色立領拼接休閑夾克NT$1,477 (134)強檔驚喜優雅素色顯瘦薄款拉鏈長袖休閒夾克NT$1,343 (131)提升氣質高級感小香風短款撞色紐扣編織休閒夾克NT$1,433 (140)韓國風簡約素色中長款連帽衛衣休閒夾克NT$2,049 (42)韓國風尚休閒素色圓領拉鏈印花長袖休閒夾克NT$1,380 (117)春秋熱賣韓版長袖寬鬆拉鏈撞色休閒夾克NT$945 (141)提高時髦感時尚小香風高級金絲編織粗花呢休閑夾克NT$1,690 (159)SNS話題產品氣質素色菱格無袖坎肩寬鬆休閒夾克NT$1,123 (93)新品到貨休閒素色寬鬆單排釦圓領長袖針織休閒夾克NT$1,400 (87)【男女同款】高端時尚防水防風印花連帽拉鏈衝鋒衣NT$1,451 (135)本季備受關注韓版寬鬆素面修身顯瘦圓領休閒夾克NT$1,335 (92)最受歡迎韓版時尚字母印花連帽拉鏈休閒夾克NT$878 (24)獨特設計復古素色單排釦長袖寬鬆短牛仔休閒夾克NT$1,125 (36)超人気優雅素色羊毛呢雙面翻領休閒夾克NT$1,534 (9)秋季新品獨特設計簡約素面立領單排釦棒球服休閒夾克NT$1,776 (21)秋冬新款不可缺少韓版百搭羊羔毛外套休閒夾克NT$1,314 (33)提升好感度小香風短款格子金屬扣顯瘦休閒夾克NT$1,004 (66)非常優雅小香風素色修身長袖紐扣圓領休閒夾克NT$1,118 (4)高端時尚清爽幹練休閑通勤顯瘦圓領長袖休閒夾克NT$1,125 (7)提升氣質優雅經典款格紋粉色小香風外套休閒夾克NT$1,502 (35)非常優雅小香風撞色圓領寬鬆長袖毛呢休閒夾克NT$1,451 (98)今年流行產品日系撞色連帽短款抽繩休閒夾克NT$1,173 (71)春秋新款韓版寬鬆拼接連帽百搭休閒夾克NT$1,429 (109)韓國風尚寬鬆氣質素色翻領長袖毛呢休閒夾克NT$1,588 (10)最受歡迎時尚休閒撞色拉鏈棒球服夾克外套NT$1,331 (7)超好搭配提高時髦感簡約素色立領拉鏈休閒夾克NT$1,080 (114)韓國風尚慵懶風牛仔毛衣拼接寬鬆單排釦休閒夾克NT$2,231 (28)提高時髦感法式小眾格紋短款翻領休閒夾克NT$1,315 (37)«12345»
已加入購物車
休閒夾克
知性亮眼百搭撞色皮邊時尚短款毛呢外套
NT$1,365
(3)
高質感百搭洋氣減齡夾克棒球服外套
NT$1,214
(10)
吸睛注目小香風撞色粗花流蘇短款休閒夾克
NT$1,622
(427)
Korea正韓撞色拼接束腰長袖輕便夾克外套
NT$1,035
(8)
休閑百搭洋氣連帽防曬薄款棒球服外套
NT$900
時尚小香風紋理感素面連帽寬鬆休閒夾克
NT$1,409
(105)
韓版時尚寬鬆設計感拼接棒球服拉鏈休閒夾克
NT$1,210
(66)
韓國風尚休閒素色連帽短款長袖拉鏈休閒夾克
NT$1,437
(99)
時尚休閒簡約立領拉鏈外套休閒夾克
NT$1,383
(28)
高端時尚日系素色連帽紐扣短款工裝休閒夾克
NT$1,302
(31)
超好搭配韓版素色羊羔毛無袖翻領坎肩休閒夾克
NT$1,125
(305)
韓國風尚獨特設計純色口袋裝飾拉鏈休閑夾克
NT$1,466
(108)
強檔驚喜優雅素色連帽單排釦口袋長袖寬鬆休閒夾克
NT$898
(284)
氣質微奢清新韓系素面圓領無袖羊羔毛休閒夾克
NT$1,282
(71)
簡約好搭個性時尚寬鬆拉鏈連帽衛衣外套休閒夾克
(26)
百搭新款拼色毛絨襯衫女中長格紋加厚長袖毛呢襯衫外套
NT$1,067
(113)
必備百搭款韓版連帽內刷毛拉鏈中長休閒夾克
(32)
超好搭配休閑連帽刷毛連帽派克服外套休閒夾克
NT$2,132
(176)
超好搭配秋冬新款時尚格紋連帽休閒夾克
NT$1,189
(265)
吸引視線韓版設計感字母慵懶風拉鏈連帽衛衣休閒夾克
NT$1,118
(257)
韓國風尚優雅素色顯瘦遮肉毛呢小香風外套斗篷休閒夾克
NT$1,311
(33)
提高時髦感超好搭配簡約皮衣圓領休閒夾克
(85)
新品到貨簡約寬鬆素面圓領紐扣休閒夾克
新登場受歡迎清爽幹練立領金屬裝飾小香風外套休閒夾克
NT$1,571
(150)
最受歡迎簡約顯瘦拉鏈連帽中長款休閑夾克
NT$1,434
(114)
韓國風尚超好搭配純色翻領廓形牛仔休閑夾克
NT$1,331
(116)
提高時髦感設計獨特立領口袋拉鏈套頭休閑夾克
NT$1,323
(25)
提高時髦感韓版寬鬆落肩袖翻領短款休閒夾克
(138)
最受歡迎立領提花長袖拉鏈休閑夾克
(180)
高端時尚獨特設計撞色拼接立領棒球休閑夾克
(160)
韓國風尚獨特設計撞色拼接連帽休閑夾克
NT$1,802
(153)
超好搭配韓版簡約寬鬆連帽拉鏈衛衣休閑夾克
NT$1,144
(125)
韓國風尚絕對時尚撞色立領拼接休閑夾克
NT$1,477
(134)
強檔驚喜優雅素色顯瘦薄款拉鏈長袖休閒夾克
NT$1,343
(131)
提升氣質高級感小香風短款撞色紐扣編織休閒夾克
NT$1,433
(140)
韓國風簡約素色中長款連帽衛衣休閒夾克
NT$2,049
(42)
韓國風尚休閒素色圓領拉鏈印花長袖休閒夾克
NT$1,380
(117)
春秋熱賣韓版長袖寬鬆拉鏈撞色休閒夾克
NT$945
(141)
提高時髦感時尚小香風高級金絲編織粗花呢休閑夾克
NT$1,690
(159)
SNS話題產品氣質素色菱格無袖坎肩寬鬆休閒夾克
NT$1,123
(93)
新品到貨休閒素色寬鬆單排釦圓領長袖針織休閒夾克
NT$1,400
(87)
【男女同款】高端時尚防水防風印花連帽拉鏈衝鋒衣
NT$1,451
(135)
本季備受關注韓版寬鬆素面修身顯瘦圓領休閒夾克
NT$1,335
(92)
最受歡迎韓版時尚字母印花連帽拉鏈休閒夾克
NT$878
(24)
獨特設計復古素色單排釦長袖寬鬆短牛仔休閒夾克
(36)
超人気優雅素色羊毛呢雙面翻領休閒夾克
NT$1,534
(9)
秋季新品獨特設計簡約素面立領單排釦棒球服休閒夾克
NT$1,776
(21)
秋冬新款不可缺少韓版百搭羊羔毛外套休閒夾克
NT$1,314
提升好感度小香風短款格子金屬扣顯瘦休閒夾克
NT$1,004
非常優雅小香風素色修身長袖紐扣圓領休閒夾克
(4)
高端時尚清爽幹練休閑通勤顯瘦圓領長袖休閒夾克
(7)
提升氣質優雅經典款格紋粉色小香風外套休閒夾克
NT$1,502
(35)
非常優雅小香風撞色圓領寬鬆長袖毛呢休閒夾克
(98)
今年流行產品日系撞色連帽短款抽繩休閒夾克
NT$1,173
春秋新款韓版寬鬆拼接連帽百搭休閒夾克
NT$1,429
(109)
韓國風尚寬鬆氣質素色翻領長袖毛呢休閒夾克
NT$1,588
最受歡迎時尚休閒撞色拉鏈棒球服夾克外套
超好搭配提高時髦感簡約素色立領拉鏈休閒夾克
NT$1,080
韓國風尚慵懶風牛仔毛衣拼接寬鬆單排釦休閒夾克
NT$2,231
提高時髦感法式小眾格紋短款翻領休閒夾克
NT$1,315
(37)