/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$399 (4) 韓版簡約高級感可折疊防曬防紫外線墨鏡NT$316 (14) 出遊必備時尚潮流鏤空個性太陽鏡墨鏡NT$486 (3) 時尚潮流可折疊百搭防紫外線防uv太陽鏡墨鏡NT$411 (2) 韓版高級感漸變色防紫外線金屬大框太陽鏡墨鏡NT$498韓版時尚防紫外線防曬太陽鏡墨鏡NT$298 (4) 吸睛注目時尚折疊防紫外線防曬太陽鏡墨鏡NT$331 (12) 吸睛注目時尚休閒顯瘦防uv防藍光遮陽鏡墨鏡飾品NT$343 (4) 韓系復古彩色大框雙色漸層金屬太陽眼鏡墨鏡NT$486 (5) 必備百搭款時尚遮臉顯瘦大框防紫外線夾片墨鏡NT$405 (4) 超級爆款時尚復古潮款圆型遮陽防曬墨鏡NT$370 (4) 時尚好搭優雅無邊框多邊形防曬遮陽墨鏡NT$378 (78) 吸睛注目時尚折疊便攜防紫外線橢圓形遮陽鏡墨鏡NT$370 (25) 超級爆款時尚可愛防尘女性遮陽墨鏡飾品NT$540 (4) 時尚好搭大熱門便携可摺叠防曬遮陽墨鏡NT$470 (38) 強力推薦簡約多色折疊太陽鏡便攜墨鏡NT$380 (17) 时髦率性韓版金屬漸變色遮陽墨鏡NT$324 (11) 吸睛注目時尚女性不規則防曬墨鏡NT$351 (18) 爆款男女同款街拍時尚太陽眼鏡墨鏡NT$398 (2) 時尚簡約折疊套鏡夏季防曬高級感套式太陽眼鏡NT$330 (10) 【6色】時尚超輕薄折疊大框顯瘦太陽眼鏡墨鏡NT$389熱銷可折疊高級感防紫外線圓臉顯瘦太陽眼鏡墨鏡NT$333 (8) 吸睛注目時尚不規則多邊形漸變遮陽鏡墨鏡NT$370 (4) 推薦熱銷爆款時尚可折疊防紫外線遮陽墨鏡NT$338 (24) 韓版時尚鑲鑽防曬防紫外線墨鏡NT$368 (4) 韓版時尚漸變色防曬防紫外線墨鏡NT$378新款氣質山茶花鏤空點漆玫瑰花百搭大框太陽眼鏡墨鏡NT$256 (2) 時髦百搭韓版漸變色防紫外綫墨鏡NT$404 (8) 【5色】小紅書網紅便攜圓臉可折疊墨鏡防紫外線墨鏡NT$358 (13) 爆款韓國太陽眼鏡完美框型復古圓框墨鏡NT$388 (4) 墨鏡夏季防曬防紫外線眼鏡大臉顯瘦高級感時尚潮太陽眼鏡NT$324 (3) 韓系質感熱門款多色可選網紅款新潮流行百搭抗UV時尚太陽眼鏡墨鏡NT$388 (15) 【男女共用】高級感戶外防曬防紫外線可折疊墨鏡太陽眼鏡NT$456 (6) 時髦率性氣質高級感漸變色可折疊防紫外線墨鏡NT$425 (2) 【4色】韓版時尚防紫外線防強光防曬高級感顯臉墨鏡NT$378推薦熱銷爆款‼️韓版方框大臉顯小防曬百搭墨鏡NT$370 (4) 本季熱賣防曬防紫外線可折疊太陽鏡墨鏡NT$324時尚百搭復古個性不規則貓眼防紫外線墨鏡NT$405 (2) 時尚潮便攜可折疊網紅同款腮紅墨鏡太陽眼鏡NT$386 (10) 韓版時尚ins潮漸變遮陽防曬方框太陽鏡墨鏡NT$343韓版偏光大框防紫外線防藍光輻射太陽鏡墨鏡NT$560 (12) 百搭時髦遮臉顯瘦防紫外綫高級感太陽鏡墨鏡NT$410 (6) 時尚好搭f復古無邊框大框防紫外線遮陽鏡墨鏡NT$675 (9) 本週新品復古時尚顯瘦方型防紫外線遮陽鏡墨鏡NT$648時髦率性ins風防藍光方圓臉高級感墨鏡NT$340 (12) 時尚必備飛行員超酷蛤蟆鏡男女兼用墨鏡NT$370 (5) 個性風格ins韓版橢圓形遮陽防曬墨鏡NT$338 (5) 出遊必備復古方框顯臉小撞色墨鏡NT$378 (2) 爆款多色可選無邊框漸層顯小臉抗UV多邊型墨鏡NT$562 (4) 出遊必備時尚偏光防曬可折疊防紫外線墨鏡NT$459 (5) 高級感歐美風防紫外線防曬太陽眼鏡墨鏡NT$343 (8) ❤熱銷推薦!韓版金屬折疊漸變防紫外線防曬墨鏡NT$449 (2) 韓系雜誌人氣商品網紅款潮流偏光太陽眼鏡墨鏡NT$370 (15) Korea正韓ins風復古方框半透明防曬太陽鏡墨鏡NT$444 (4) 氣質微奢韓版時尚漸變色金屬太陽鏡墨鏡NT$370 (10)
已加入購物車
墨鏡
吸睛注目優雅復古方型防紫外線遮陽鏡墨鏡
NT$399
(4)
韓版簡約高級感可折疊防曬防紫外線墨鏡
NT$316
(14)
出遊必備時尚潮流鏤空個性太陽鏡墨鏡
NT$486
(3)
時尚潮流可折疊百搭防紫外線防uv太陽鏡墨鏡
NT$411
(2)
韓版高級感漸變色防紫外線金屬大框太陽鏡墨鏡
NT$498
韓版時尚防紫外線防曬太陽鏡墨鏡
NT$298
吸睛注目時尚折疊防紫外線防曬太陽鏡墨鏡
NT$331
(12)
吸睛注目時尚休閒顯瘦防uv防藍光遮陽鏡墨鏡飾品
NT$343
韓系復古彩色大框雙色漸層金屬太陽眼鏡墨鏡
(5)
必備百搭款時尚遮臉顯瘦大框防紫外線夾片墨鏡
NT$405
超級爆款時尚復古潮款圆型遮陽防曬墨鏡
NT$370
時尚好搭優雅無邊框多邊形防曬遮陽墨鏡
NT$378
(78)
吸睛注目時尚折疊便攜防紫外線橢圓形遮陽鏡墨鏡
(25)
超級爆款時尚可愛防尘女性遮陽墨鏡飾品
NT$540
時尚好搭大熱門便携可摺叠防曬遮陽墨鏡
NT$470
(38)
強力推薦簡約多色折疊太陽鏡便攜墨鏡
NT$380
(17)
时髦率性韓版金屬漸變色遮陽墨鏡
NT$324
(11)
吸睛注目時尚女性不規則防曬墨鏡
NT$351
(18)
爆款男女同款街拍時尚太陽眼鏡墨鏡
NT$398
時尚簡約折疊套鏡夏季防曬高級感套式太陽眼鏡
NT$330
(10)
【6色】時尚超輕薄折疊大框顯瘦太陽眼鏡墨鏡
NT$389
熱銷可折疊高級感防紫外線圓臉顯瘦太陽眼鏡墨鏡
NT$333
(8)
吸睛注目時尚不規則多邊形漸變遮陽鏡墨鏡
推薦熱銷爆款時尚可折疊防紫外線遮陽墨鏡
NT$338
(24)
韓版時尚鑲鑽防曬防紫外線墨鏡
NT$368
韓版時尚漸變色防曬防紫外線墨鏡
新款氣質山茶花鏤空點漆玫瑰花百搭大框太陽眼鏡墨鏡
NT$256
時髦百搭韓版漸變色防紫外綫墨鏡
NT$404
【5色】小紅書網紅便攜圓臉可折疊墨鏡防紫外線墨鏡
NT$358
(13)
爆款韓國太陽眼鏡完美框型復古圓框墨鏡
NT$388
墨鏡夏季防曬防紫外線眼鏡大臉顯瘦高級感時尚潮太陽眼鏡
韓系質感熱門款多色可選網紅款新潮流行百搭抗UV時尚太陽眼鏡墨鏡
(15)
【男女共用】高級感戶外防曬防紫外線可折疊墨鏡太陽眼鏡
NT$456
(6)
時髦率性氣質高級感漸變色可折疊防紫外線墨鏡
NT$425
【4色】韓版時尚防紫外線防強光防曬高級感顯臉墨鏡
推薦熱銷爆款‼️韓版方框大臉顯小防曬百搭墨鏡
本季熱賣防曬防紫外線可折疊太陽鏡墨鏡
時尚百搭復古個性不規則貓眼防紫外線墨鏡
時尚潮便攜可折疊網紅同款腮紅墨鏡太陽眼鏡
NT$386
韓版時尚ins潮漸變遮陽防曬方框太陽鏡墨鏡
韓版偏光大框防紫外線防藍光輻射太陽鏡墨鏡
NT$560
百搭時髦遮臉顯瘦防紫外綫高級感太陽鏡墨鏡
NT$410
時尚好搭f復古無邊框大框防紫外線遮陽鏡墨鏡
NT$675
(9)
本週新品復古時尚顯瘦方型防紫外線遮陽鏡墨鏡
NT$648
時髦率性ins風防藍光方圓臉高級感墨鏡
NT$340
時尚必備飛行員超酷蛤蟆鏡男女兼用墨鏡
個性風格ins韓版橢圓形遮陽防曬墨鏡
出遊必備復古方框顯臉小撞色墨鏡
爆款多色可選無邊框漸層顯小臉抗UV多邊型墨鏡
NT$562
出遊必備時尚偏光防曬可折疊防紫外線墨鏡
NT$459
高級感歐美風防紫外線防曬太陽眼鏡墨鏡
❤熱銷推薦!韓版金屬折疊漸變防紫外線防曬墨鏡
NT$449
韓系雜誌人氣商品網紅款潮流偏光太陽眼鏡墨鏡
Korea正韓ins風復古方框半透明防曬太陽鏡墨鏡
NT$444
氣質微奢韓版時尚漸變色金屬太陽鏡墨鏡