/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)}上衣|女性時尚 - momo-chic 台灣|時尚服飾、海外購物情報站 已加入購物車會員登入收藏購物車新品上市人氣熱銷限時折扣特別企劃上衣類T恤襯衫衛衣針織/毛衣細肩帶/背心風格支線清新學院風韓版優雅風可愛漫畫風百變休閒風洋裝類長洋裝短洋裝印花洋裝牛仔洋裝蕾絲洋裝針織洋裝吊帶褲套裝下著類寬褲長褲牛仔褲裙類內搭褲短褲外套類休閒夾克西裝外套罩衫風衣外套羽絨外套鞋子休閒鞋平底鞋高跟鞋靴子涼鞋內衣泳衣情趣內衣bra內衣內褲居家服/睡衣配件飾品包包墨鏡冰袖皮帶雨具/雨衣襪子圍巾/手套帽/披肩後跟貼SHOP-ALL上身下身連身類貼身內著配件類 上衣類最新上架價格由低到高價格由高到低最高人氣溫婉知性經典泡泡袖素面高領修身針織NT$945 (13) 【5色】氣質簡約百搭v領素面五分袖針織T恤NT$648 (2) 限時折扣韓版拼色寬鬆長袖打底針織衫套頭鏤空薄毛衣NT$517 NT$1,034 (62) 個性風格復古撞色格紋翻領襯衫NT$855 (8) 限時折扣絕對時尚韓版多色可選內刷毛百搭高領內搭T恤NT$339 NT$677 (47) 時尚好搭雙色條紋透氣套頭T賉NT$788 (3) 高級感設計減齡燈籠袖小花邊針織衫NT$1,518設計感蕾絲拼接連帽長袖衛衣NT$900 (2) 設計感優雅假兩件圓點拼接長袖衛衣NT$898設計感小衆純色小V領寬鬆針織衫NT$990簡約休閒時尚百搭橘色圓領粗線圓領針織毛衣NT$1,228【全4色】蕾絲半高領鈎花釘珠針織衫NT$1,013【全4色】時尚設計漸變色針織衫NT$1,013韓版寬鬆顯瘦加厚圓領印花衛衣NT$702韓風polo領顯瘦加厚拼色針織衫NT$810人氣熱銷韓系新款高級感拼接娃娃領針織衫NT$810 (2) 簡約質感經典款百搭高齡五分鐘針織T恤NT$1,123 (12) 全場精選韓版時尚拼接翻領長袖T恤NT$1,035 (178) 五色可選復古優雅氣質親膚立領盤扣長袖針織NT$1,234 (2) 【全7色】時尚麻花高領針織拉鏈寬鬆套頭毛衣NT$1,004 (2) 【多款印花】休閒簡約印花竹節棉短袖T恤NT$432 (32) 時尚好搭休閑素色泡泡袖荷葉領壓褶襯衫NT$742 (104) 【全10色】減齡顯瘦長袖V領長袖打底衫NT$810韓系小眾寬鬆顯瘦慵懶高級感白色印花針織上衣NT$810甜美溫柔風秋冬新款針織衫套頭高領上衣條紋撞色厚款毛衣NT$851蝙蝠袖披肩斗篷慵懶風一字領中長針織外搭毛衣NT$788 (2) 設計感拼接假兩件牛仔袖針織衫NT$743學院風寬鬆馬海毛百搭針織衫NT$952慵懶風高級感polo領套頭針織衫NT$855【全4色】純色保暖高領套頭針織衫NT$945高領緊身長袖内搭針織衫NT$810時髦復古條紋高領保暖針織衫NT$788【全4色】洋氣時尚圓領針織衫NT$878慵懶風撞色高領軟糯針織毛衣NT$1,035【全14色】懶人時尚法式圓領保暖針織衫NT$799簡約休閒時尚條紋撞色半拉鏈立領/翻領長袖針織NT$968人氣熱銷軟糯舒適慵懶感高級撞色燈籠袖針織衫NT$1,103 (2) 萬年必備爆款設計感小衆時尚寬鬆顯瘦拼接連帽衛衣NT$900 (2) 慵懶軟糯高級感針織開衫NT$923 (2) 氣質堆堆領套頭寬鬆拼色方格T恤NT$794 (2) 大尺碼休閒時尚撞色寬鬆慵懶風半高領套頭毛衣NT$729 (7) 秋冬新款簡約半高領小鹿撞色寬鬆多色針織NT$900 (12) 韓國風百變休閒撞色格紋長袖襯衫NT$689 (23) 韓版時尚百搭寬鬆蝙蝠袖素面圓領針織NT$684 (24) 限時折扣韓國風尚休閒拼色寬鬆連帽加絨長袖衛衣NT$850 NT$1,699 (102) 吸引視線簡約撞色圓領長袖針織毛衣T恤NT$968 (6) 洋氣寬鬆顯瘦V領針織長袖開衫NT$1,035 (2) 5色輕熟時尚簡約寬鬆感素面蝙蝠俠針織毛衣NT$1,167 (14) 百搭時髦復古喇叭袖蕾絲設計感短袖襯衫NT$979 (2) 簡約百搭拼接寬鬆顯瘦衛衣NT$1,214 (2) M-2XL大尺碼華夫格韓版寬鬆設計感字母刺繡衛衣NT$540入秋閉眼入韓系溫柔穿搭內搭打底針織衫高級感超好看慵懶風藍色條紋毛衣NT$810【7色】簡約質感假兩件紐扣拼色長袖針織NT$923【11色】質感簡約半高領修身坑條長袖針織NT$743【全3色】撞色POLO領設計感假兩件針織衫NT$1,019【全5色】溫暖百搭半高領洋氣加厚針織毛衣NT$765【全8色】重磅加厚半高領慵懶風套頭針織衫NT$855超級抗寒保暖半高領慵懶風仿水貂毛毛衣NT$900Korea正韓 舒服軟糯好感 慵懶風寬鬆時尚櫻桃刺繡假兩件毛衣NT$990條紋顯瘦 舒服軟糯好感 溫柔系 慵懶風寬鬆百搭中長套頭針織衫上衣NT$743«12345678...4546»
已加入購物車
上衣類
溫婉知性經典泡泡袖素面高領修身針織
NT$945
(13)
【5色】氣質簡約百搭v領素面五分袖針織T恤
NT$648
(2)
韓版拼色寬鬆長袖打底針織衫套頭鏤空薄毛衣
NT$517 NT$1,034
(62)
個性風格復古撞色格紋翻領襯衫
NT$855
(8)
絕對時尚韓版多色可選內刷毛百搭高領內搭T恤
NT$339 NT$677
(47)
時尚好搭雙色條紋透氣套頭T賉
NT$788
(3)
高級感設計減齡燈籠袖小花邊針織衫
NT$1,518
設計感蕾絲拼接連帽長袖衛衣
NT$900
設計感優雅假兩件圓點拼接長袖衛衣
NT$898
設計感小衆純色小V領寬鬆針織衫
NT$990
簡約休閒時尚百搭橘色圓領粗線圓領針織毛衣
NT$1,228
【全4色】蕾絲半高領鈎花釘珠針織衫
NT$1,013
【全4色】時尚設計漸變色針織衫
韓版寬鬆顯瘦加厚圓領印花衛衣
NT$702
韓風polo領顯瘦加厚拼色針織衫
NT$810
韓系新款高級感拼接娃娃領針織衫
簡約質感經典款百搭高齡五分鐘針織T恤
NT$1,123
(12)
全場精選韓版時尚拼接翻領長袖T恤
NT$1,035
(178)
五色可選復古優雅氣質親膚立領盤扣長袖針織
NT$1,234
【全7色】時尚麻花高領針織拉鏈寬鬆套頭毛衣
NT$1,004
【多款印花】休閒簡約印花竹節棉短袖T恤
NT$432
(32)
時尚好搭休閑素色泡泡袖荷葉領壓褶襯衫
NT$742
(104)
【全10色】減齡顯瘦長袖V領長袖打底衫
韓系小眾寬鬆顯瘦慵懶高級感白色印花針織上衣
甜美溫柔風秋冬新款針織衫套頭高領上衣條紋撞色厚款毛衣
NT$851
蝙蝠袖披肩斗篷慵懶風一字領中長針織外搭毛衣
設計感拼接假兩件牛仔袖針織衫
NT$743
學院風寬鬆馬海毛百搭針織衫
NT$952
慵懶風高級感polo領套頭針織衫
【全4色】純色保暖高領套頭針織衫
高領緊身長袖内搭針織衫
時髦復古條紋高領保暖針織衫
【全4色】洋氣時尚圓領針織衫
NT$878
慵懶風撞色高領軟糯針織毛衣
【全14色】懶人時尚法式圓領保暖針織衫
NT$799
簡約休閒時尚條紋撞色半拉鏈立領/翻領長袖針織
NT$968
軟糯舒適慵懶感高級撞色燈籠袖針織衫
NT$1,103
萬年必備爆款設計感小衆時尚寬鬆顯瘦拼接連帽衛衣
慵懶軟糯高級感針織開衫
NT$923
氣質堆堆領套頭寬鬆拼色方格T恤
NT$794
大尺碼休閒時尚撞色寬鬆慵懶風半高領套頭毛衣
NT$729
(7)
秋冬新款簡約半高領小鹿撞色寬鬆多色針織
韓國風百變休閒撞色格紋長袖襯衫
NT$689
(23)
韓版時尚百搭寬鬆蝙蝠袖素面圓領針織
NT$684
(24)
韓國風尚休閒拼色寬鬆連帽加絨長袖衛衣
NT$850 NT$1,699
(102)
吸引視線簡約撞色圓領長袖針織毛衣T恤
(6)
洋氣寬鬆顯瘦V領針織長袖開衫
5色輕熟時尚簡約寬鬆感素面蝙蝠俠針織毛衣
NT$1,167
(14)
百搭時髦復古喇叭袖蕾絲設計感短袖襯衫
NT$979
簡約百搭拼接寬鬆顯瘦衛衣
NT$1,214
M-2XL大尺碼華夫格韓版寬鬆設計感字母刺繡衛衣
NT$540
入秋閉眼入韓系溫柔穿搭內搭打底針織衫高級感超好看慵懶風藍色條紋毛衣
【7色】簡約質感假兩件紐扣拼色長袖針織
【11色】質感簡約半高領修身坑條長袖針織
【全3色】撞色POLO領設計感假兩件針織衫
NT$1,019
【全5色】溫暖百搭半高領洋氣加厚針織毛衣
NT$765
【全8色】重磅加厚半高領慵懶風套頭針織衫
超級抗寒保暖半高領慵懶風仿水貂毛毛衣
Korea正韓 舒服軟糯好感 慵懶風寬鬆時尚櫻桃刺繡假兩件毛衣
條紋顯瘦 舒服軟糯好感 溫柔系 慵懶風寬鬆百搭中長套頭針織衫上衣