@ -8,10 +8,12 @@
< link rel = "canonical" href = "<!--@CANONICAL@-->" >
< meta content = "width=device-width,minimum-scale=1,initial-scale=1" name = "viewport" >
<!-- @OG:IMAGE@ -->
< link rel = "shortcut icon" href = "https://data.asiahighlights.com/favicon.ico" / >
< link rel = "dns-prefetch" href = "https://data.asiahighlights.com" >
< link rel = "dns-prefetch" href = "https://images.asiahighlights.com" >
< link rel = "shortcut icon" href = "/favicon.ico" >
< link rel = "apple-touch-icon" href = "/touch-icon-iphone.png" >
< link rel = "dns-prefetch" href = "https://data.globalhighlights.com" >
< link rel = "dns-prefetch" href = "https://images.globalhighlights.com" >
< link rel = "dns-prefetch" href = "https://www.googletagmanager.com" >
<!-- @MAIN - CSS@ -->
<!-- @ADDON - CSS@ -->
<!-- Google Tag Manager -->
@ -21,29 +23,7 @@
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-MNKHRM5');< / script >
<!-- End Google Tag Manager -->
< script >
((doc, buttonId, contentId) => {
doc.addEventListener('DOMContentLoaded', () => {
var moreButton = doc.getElementById(buttonId);
var contentDiv = doc.getElementById(contentId);
if (moreButton === null || contentDiv === null) {
console.error('CHECK MORE config error');
return;
}
moreButton.addEventListener('click', () => {
moreButton.classList.add('gh-animate-fade-out');
setTimeout(() => {
moreButton.classList.add('gh-display-none');
}, 80);
contentDiv.classList.remove('gh-display-none');
setTimeout(() => {
contentDiv.classList.remove('gh-animate-slide-down');
contentDiv.classList.add('gh-animate-slide-up');
}, 0);
});
});
})(document, 'checkMoreButton', 'moreContentDiv');
< / script >
< / head >
< body >
<!-- Google Tag Manager (noscript) -->
@ -65,6 +45,7 @@
< nav id = "ml-menu" class = "menu" >
<!--
< div class = "siteSearch" >
< form id = "searchbox_001281624266240652297:cl1fy1cxepi" name = "googlesreach"
action="https://www.asiahighlights.com/sitesearch">
@ -76,7 +57,7 @@
< input type = "hidden" name = "__ftoken__"
value="MTU5ODMzNDc2NDQ0NA==.3664784f0395175e7de44382781cd7f7cb647e2a">< / form >
< / div >
-->
< button class = "action action--close" aria-label = "Close Menu" > < svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24" > < path fill = "none" d = "M0 0h24v24H0V0z" > < / path > < path d = "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z" fill = "var(--c-text-secondary)" > < / path > < / svg > < / button >
< div class = "menu__wrap" >
< ul data-menu = "main" class = "menu__level menu__level--current" tabindex = "-1" role = "menu" aria-label = "All" >
@ -133,13 +114,81 @@
<!-- 移动底部 -->
< footer >
< div class = "infotailor" >
< div class = "infotailorword" > We are here to help you...< br > Start planning your tailor-made Asia tour with 1-1 help from our travel advisors.
< div class = "infotailormade" > < a href = "/forms/tailormade" > Create My Trip < / a > < / div >
< div class = "form_content_bg" > < / div >
< div class = "form_content" >
< div class = "formtitle" >
< h2 > Why Travel with Global Highlights< / h2 >
< ul >
< li class = "tailormade" > < strong > Tailor-made experience:< / strong > All of your ideas/needs will be carefully considered to create your ideal trip.< / li >
< li class = "worryfree" > < strong > Worry-free planning: < / strong > Every step of your trip, you will be looked after by your 1:1 travel consultant based in Asia.< / li >
< li class = "norisk" > < strong > No-risk booking:< / strong > We refund as much as we can and adapt flexibly to unexpected changes.< / li >
< / ul >
< / div >
< div class = "ghwhyus" >
< form action = "/form/save" id = "booking_form_inquiry" method = "post" name = "booking_form_inquiry" >
< div class = "InquiryFormBox" >
< div class = "FieldSet" >
< p > < input class = "FullName" data-required = "Please enter your fullname" id = "realname" name = "realname" placeholder = "Full name" required = "" type = "text" value = "" > < span class = "hidden" id = "realname_errmsg" > < / span > < / p >
< p > < input class = "EmailAddress" data-required = "Please enter your e-mail address" data-pattern = "Expecting an e-mail address" id = "email" name = "email" pattern = "^[\w\-\.]+@[\w\-\.]+(\.\w+)+$" placeholder = "Email" required = "" type = "text" value = "" > < span class = "hidden" id = "email_errmsg" > < / span > < / p >
< p > < input class = "InquiryCalendar hasDatepicker" data-min-date = "7" id = "starting_date" name = "starting_date" placeholder = "Starting date" required = "" type = "date" value = "" min = "2021-11-02" > < span class = "hidden" id = "starting_date_errmsg" > < / span > < / p >
< p > < input class = "Inquiryphone hasDatepicker" name = "phone" placeholder = "Phone or other ways to contact you" required = "" type = "text" value = "" > < / p >
< textarea id = "additionalrequirements" name = "additionalrequirements" placeholder = "How many people, hotel style and changes to make... " style = "margin-bottom:20px;" > < / textarea >
< input name = "nullemail" placeholder = "Your alternative email?" type = "hidden" value = "" >
< input name = "cli_no" type = "hidden" value = "" >
< input name = "cli_sn" type = "hidden" value = "" >
< input id = "url" name = "url" type = "hidden" value = "file:///D:/globalhighlights.com/design/top-nav.html" >
< input id = "sourcetype" name = "sourcetype" type = "hidden" value = "32113" >
< button class = "sendButton" id = "submit_booking_form_inquiry" name = "booking_form_inquiry_list" type = "submit" >
Send My Inquiry
< / button >
< / div >
< / div >
< / form >
< script >
(function() {
String.prototype.lpad = function(padString, length) {
var str = this;
while (str.length < length )
str = padString + str;
return str;
}
document.getElementById("url").value = (window.location.href);
const dateOffset = document.getElementById('starting_date').dataset.minDate;
const today = new Date();
const startMinDate = new Date(today.setDate(today.getDate() + parseInt(dateOffset)));
const minDateStr = startMinDate.getFullYear() + '-' + (startMinDate.getMonth() + 1).toString().lpad('0', 2) + '-' + startMinDate.getDate().toString().lpad('0', 2);
document.getElementById('starting_date').setAttribute("min", minDateStr);
const required_fields = document.querySelectorAll(":required");
required_fields.forEach(element => {
element.addEventListener("input", function(event) {
if (element.validity.valueMissing) {
element.setCustomValidity(element.dataset.required);
} else if (element.validity.patternMismatch) {
element.setCustomValidity(element.dataset.pattern);
} else {
element.setCustomValidity("");
}
});
});
})();
< / script >
< / div >
< / div >
< footer >
< div id = "footer" >
< div class = "footerContent" >
@ -191,9 +240,6 @@
< path id = "instagram" fill = "#ffffff" d = "M22.107,3.415H7.893c-2.469,0-4.479,2.007-4.479,4.477v4.73v9.486c0,2.469,2.01,4.479,4.479,4.479h14.215 c2.469,0,4.479-2.01,4.479-4.479v-9.486v-4.73C26.586,5.421,24.576,3.415,22.107,3.415 M23.393,6.086l0.512-0.004v0.511v3.416 l-3.916,0.014l-0.012-3.928L23.393,6.086z M11.693,12.622c0.742-1.028,1.945-1.7,3.307-1.7s2.564,0.672,3.307,1.7 c0.484,0.67,0.771,1.49,0.771,2.379c0,2.248-1.828,4.078-4.078,4.078c-2.248,0-4.078-1.83-4.078-4.078 C10.922,14.112,11.211,13.292,11.693,12.622 M24.328,22.107c0,1.225-0.994,2.219-2.221,2.219H7.893 c-1.225,0-2.219-0.994-2.219-2.219v-9.486h3.459C8.832,13.356,8.664,14.159,8.664,15c0,3.494,2.842,6.335,6.336,6.335 s6.336-2.842,6.336-6.335c0-0.842-0.17-1.645-0.467-2.379h3.459V22.107z" > < / path >
< / svg > < / a > < / li >
< / ul >
< / div >
@ -206,7 +252,7 @@
< / div >
< / footer >
<!-- 移动底部 结束 -->
< link rel = "javascript" href = " https://data.globalhighlights.com/js/swiper-bundle-7.0.9.min.js" >
< script > / * m e m u j s h t t p s : / / d a t a . c h i n a h i g h l i g h t s . c o m / j s / m o b i l e - m e n u . j s * /
(function(window){function classReg(className){return new RegExp("(^|\\s+)"+className+"(\\s+|$)")}var hasClass,addClass,removeClass;if("classList" in document.documentElement){hasClass=function(elem,c){return elem.classList.contains(c)};addClass=function(elem,c){elem.classList.add(c)};removeClass=function(elem,c){elem.classList.remove(c)}}else{hasClass=function(elem,c){return classReg(c).test(elem.className)};addClass=function(elem,c){if(!hasClass(elem,c)){elem.className=elem.className+" "+c}};removeClass=function(elem,c){elem.className=elem.className.replace(classReg(c)," ")}}function toggleClass(elem,c){var fn=hasClass(elem,c)?removeClass:addClass;fn(elem,c)}var classie={hasClass:hasClass,addClass:addClass,removeClass:removeClass,toggleClass:toggleClass,has:hasClass,add:addClass,remove:removeClass,toggle:toggleClass};if(typeof define==="function"& & define.amd){define(classie)}else{if(typeof exports==="object"){module.exports=classie}else{window.classie=classie}}})(window);
!function(e,n,t){function r(e,n){return typeof e===n}function o(){var e,n,t,o,i,s,a;for(var f in C){if(C.hasOwnProperty(f)){if(e=[],n=C[f],n.name&&(e.push(n.name.toLowerCase()),n.options&&n.options.aliases&&n.options.aliases.length)){for(t=0; t< n.options.aliases.length ; t + + ) { e . push ( n . options . aliases [ t ] . toLowerCase ( ) ) } } for ( o = r(n.fn,"function")?n.fn():n.fn,i=0;i<e.length;i++){s=e[i],a=s.split("."),1===a.length?Modernizr[a[0]]=o:(!Modernizr[a[0]]||Modernizr[a[0]] instanceof Boolean | | ( Modernizr [ a [ 0 ] ] = new Boolean ( Modernizr [ a [ 0 ] ] ) ) , Modernizr [ a [ 0 ] ] [ a [ 1 ] ] = o ) , g . push ( ( o ? " " : " no- " ) + a . join ( " - " ) ) } } } } function i ( e ) { var n = w.className,t=Modernizr._config.classPrefix||"";if(x&&(n=n.baseVal),Modernizr._config.enableJSClass){var r = new RegExp ( " ( ^ | \ \ s ) " + t + " no-js ( \ \ s | $ ) " ) ; n = n.replace(r,"$1"+t+"js$2")}Modernizr._config.enableClasses&&(n+=" " + t + e . join ( " " + t ) , x ? w . className . baseVal = n:w.className=n)}function s ( e ) { return e . replace ( / ( [ a-z ] ) - ( [ a-z ] ) / g , function ( e , n , t ) { return n + t . toUpperCase ( ) } ) . replace ( / ^ - / , " " ) } function a ( e , n ) { return ! ! ~ ( " " + e ) . indexOf ( n ) } function f ( ) { return " function " ! = typeof n . createElement ? n . createElement ( arguments [ 0 ] ) :x ? n . createElementNS . call ( n , " http: / / www . w3 . org / 2000 / svg " , arguments [ 0 ] ) :n . createElement . apply ( n , arguments ) } function l ( e , n ) { return function ( ) { return e . apply ( n , arguments ) } } function u ( e , n , t ) { var o ; for ( var i in e ) { if ( e [ i ] in n ) { return t = ==!1?e[i]:(o=n[e[i]],r(o,"function")?l(o,t||n):o)}}return ! 1 } function p ( e ) { return e . replace ( / ( [ A-Z ] ) / g , function ( e , n ) { return " - " + n . toLowerCase ( ) } ) . replace ( / ^ ms- / , " -ms- " ) } function d ( ) { var e = n.body;return e | | ( e = f(x?"svg":"body"),e.fake=!0),e}function c ( e , t , r , o ) { var i , s , a , l , u = "modernizr" , p = f("div"),c=d();if(parseInt(r,10)){for(;r--;){a=f("div"),a.id=o?o[r]:u+(r+1),p.appendChild(a)}}return i = f("style"),i.type="text/css",i.id="s"+u,(c.fake?c:p).appendChild(i),c.appendChild(p),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(n.createTextNode(e)),p.id=u,c.fake&&(c.style.background="",c.style.overflow="hidden",l=w.style.overflow,w.style.overflow="hidden",w.appendChild(c)),s=t(p,e),c.fake?(c.parentNode.removeChild(c),w.style.overflow=l,w.offsetHeight):p.parentNode.removeChild(p),!!s}function m ( n , r ) { var o = n.length;if("CSS" in e & & " supports " in e . CSS ) { for ( ; o-- ; ) { if ( e . CSS . supports ( p ( n [ o ] ) , r ) ) { return ! 0 } } return ! 1 } if ( " CSSSupportsRule " in e ) { for ( var i = [];o--;){i.push("("+p(n[o])+":"+r+")")}return i = i.join(" or " ) , c ( " @ supports ( " + i + " ) { # modernizr { position: absolute ; } } " , function ( e ) { return " absolute " = = getComputedStyle ( e , null ) . position } ) } return t } function v ( e , n , o , i ) { function l ( ) { p & & ( delete z . style , delete z . modElem ) } if ( i = r(i,"undefined")?!1:i,!r(o,"undefined")){var u = m(e,o);if(!r(u,"undefined")){return u } } for ( var p , d , c , v , h , y = ["modernizr","tdiv"];!z.style;){p=!0,z.modElem=f(y.shift()),z.style=z.modElem.style}for(c=e.length,d=0;c > d;d++){if(v=e[d],h=z.style[v],a(v,"-")& & (v=s(v)),z.style[v]!==t){if(i||r(o,"undefined")){return l(),"pfx"==n?v:!0}try{z.style[v]=o}catch(g){}if(z.style[v]!=h){return l(),"pfx"==n?v:!0}}}return l(),!1}function h(e,n,t,o,i){var s=e.charAt(0).toUpperCase()+e.slice(1),a=(e+" "+b.join(s+" ")+s).split(" ");return r(n,"string")||r(n,"undefined")?v(a,n,o,i):(a=(e+" "+N.join(s+" ")+s).split(" "),u(a,n,t))}function y(e,n,r){return h(e,t,t,n,r)}var g=[],C=[],_={_version:"3.2.0",_config:{classPrefix:"",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,n){var t=this;setTimeout(function(){n(t[e])},0)},addTest:function(e,n,t){C.push({name:e,fn:n,options:t})},addAsyncTest:function(e){C.push({name:null,fn:e})}},Modernizr=function(){};Modernizr.prototype=_,Modernizr=new Modernizr;var w=n.documentElement,x="svg"===w.nodeName.toLowerCase(),S="Moz O ms Webkit",b=_._config.usePrefixes?S.split(" "):[];
@ -215,10 +261,119 @@
eval(function(p,a,c,k,e,d){e=function(c){return(c< a ? " " :e ( parseInt ( c / a ) ) ) + ( ( c = c%a) > 35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1;};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p;}('8.R=10;(4(){3 h=b 26();4 11(X){8.R=X&&X.1I===\'1b\'?h.1V==1:10; 1c()}h.1T=11;h.1Z=11;h.S=\'1M:1R/1x;1F,1Q/1P=\'})();5(!c.g){c.g=(4(){3 1u=y.M.1S;3 P=4(l){6 I l==="4"||1u.Q(l)==="[19 1L]"};3 1j=4(D){3 f=1O(D);5(1N(f)){6 0}5(f===0||!1Y(f)){6 f}6(f>0?1:-1)*o.1X(o.20(f))};3 1y=o.1U(2,1W)-1;3 1a=4(D){3 9=1j(D);6 o.1G(o.1H(9,0),1y)};6 4 g(J){3 C=E;3 U=y(J);5(J==p){F b H("c.g 1K 1J 1E-1D 19 - V p 1k B")}3 n=j.m>1?j[1]:2o B;3 T;5(I n!=="B"){5(!P(n)){F b H("c.g: 2q 2j, 2i 2k 2l 2m 2n a 4")}5(j.m>2){T=j[2]}}3 9=1a(U.m);3 A=P(C)?y(b C(9)):b c(9);3 k=0;3 d;1l(k< 9 ) { d = U[k];5(n){A[k]=I T = =="B"?n(d,k):n.Q(T,d,k)}z{A[k]=d}k+=1}A.m=9;6 A } } ( ) ) } 5 ( ! c . M . v ) { c . M . v = 4(u){3 T , k ; 5 ( E = =p){F b H ( " E 1i p 1k V 2p " ) } 3 O = y(E);3 9 = O.m > >>0;5(I u!=="4"){F b H(u+" 1i V a 4")}5(j.m>1){T=j[1]}k=0;1l(k< 9 ) { 3 d ; 5 ( k 13 O ) { d = O[k];u.Q(T,d,k,O)}k++}}}4 1c ( 2h ) { 3 14 = 4(i){i.W("1b",4(){i.r.q=1});5(8.R){i.1z("S",i.1B("1A").25(\'.28\',\'.1x\'))}z{i.1z("S",i.1B("1A"))}};3 1p = c.g(e.1q("h[1C=27]"));1p.v(4(7,Y){7.r.q=0;7.r.1w="q 0 . 18 1e-13-1m " ; 14 ( 7 ) } ) ; 3 w = 1o();w();4 12 ( l , 1s , 1v ) { 3 N = p,L=b 1r ( ) ; 6 4 ( ) { 3 K = b 1r ( ) ; 22 ( N ) ; 5 ( K-L > =1v){l();L=K}z{N=21(l,1s)}}}4 1h(1n){3 16=1n.24();6{15:16.15+8.23-e.t.2e,1t:16.1t+8.2d-e.t.2g}}4 1o(){3 G=c.g(e.1q("h[1C=2f]"));G.v(4(7,Y){7.r.q=0;7.r.1w="q 0.18 1e-13-1m"});6 4(){3 1g=8.2a;3 x=(e.t&&e.t.x)||(e.1d&&e.1d.x); G=G.29(4(7,Y){3 1f=1h(7).15;3 Z=1f< 1g + x ; 5 ( Z ) { 14 ( 7 ) } 6 ! Z } ) } } 5 ( 8 . W ) { 8 . W ( " 2c " , 12 ( w , s , s ) , 10 ) } z { 5 ( 8 . 17 ) { 8 . 17 ( " 2b " , 12 ( w , s , s ) ) } } } ; ' , 62 , 151 , ' | | | var | function | if | return | element | window | len | | new | Array | kValue | document | number | from | img | target | arguments | | fn | length | mapFn | Math | null | opacity | style | 500 | documentElement | callback | forEach | lazyloader | scrollTop | Object | else | | undefined | | value | this | throw | lazyImageList | TypeError | typeof | arrayLike | curTime | startTime | prototype | timeout | | isCallable | call | isSupportWebp | src | | items | not | addEventListener | event | index | hasVisible | false | getResult | throttle | in | loadImageByUrl | top | box | attachEvent | 5s | object | toLength | load | createImageLoader | body | ease | offsetTop | seeHeight | getOffset | is | toInteger | or | while | out | el | createLazyloader | imageList | querySelectorAll | Date | delay | left | toStr | atleast | transition | webp | maxSafeInteger | setAttribute | originalsrc | getAttribute | loader | like | array | base64 | min | max | type | an | requires | Function | data | isNaN | Number | vuUAAA | UklGRiQAAABXRUJQVlA4IBgAAAAwAQCdASoBAAEAAwA0JaQAA3AA | image | toString | onerror | pow | width | 53 | floor | isFinite | onload | abs | setTimeout | clearTimeout | pageYOffset | getBoundingClientRect | replace | Image | ready | jpg | filter | innerHeight | onscroll | scroll | pageXOffset | clientTop | lazy | clientLeft | settings | the | provided | second | argument | must | be | void | defined | when ' . split ( ' | ' ) , 0 , { } ) )
function loadScriptByAsync(src) {var asyncScript = document.createElement("script");asyncScript.async = true;asyncScript.crossorigin = "anonymous";asyncScript.src = src;firstScript=document.getElementsByTagName("script")[0];firstScript.parentNode.insertBefore(asyncScript, firstScript);}
< / script >
< script >
((doc, buttonId, contentId) => {
doc.addEventListener('DOMContentLoaded', () => {
var moreButton = doc.getElementById(buttonId);
var contentDiv = doc.getElementById(contentId);
if (moreButton === null || contentDiv === null) {
console.error('CHECK MORE config error');
return;
}
moreButton.addEventListener('click', () => {
moreButton.classList.add('gh-animate-fade-out');
setTimeout(() => {
moreButton.classList.add('gh-display-none');
}, 80);
contentDiv.classList.remove('gh-display-none');
setTimeout(() => {
contentDiv.classList.remove('gh-animate-slide-down');
contentDiv.classList.add('gh-animate-slide-up');
}, 0);
});
});
})(document, 'checkMoreButton', 'moreContentDiv');
< / script >
<!-- @PRODUCT - JS@ -->
<!-- @ADDON - JS@ -->
<!-- @IN - ARTICLE - GOOGLE@ -->
<!-- @ADDTHIS - WIDGET@ -->
< script type = "application/ld+json" >
{
"@context": "http://schema.org",
"@type": "Organization",
"name": "Global Highlights",
"url": "https://www.globalhighlights.com/",
"logo": "https://data.chinahighlights.com/image/aboutus/logo-gh.png",
"contactPoint" : [{
"@type": "ContactPoint",
"telephone": "+86 773 2831999",
"contactType": "customer support",
"availableLanguage": "English"
}],
"sameAs" : [
"https://www.facebook.com/GlobalHighlightsTravel",
"https://twitter.com/GlobalHighligh1",
"https://www.instagram.com/globalhighlightstour/"
]
}
< / script >
< script type = "application/ld+json" >
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://www.globalhighlights.com/",
"name": "Global Highlights",
"address": {
"@type": "PostalAddress",
"streetAddress": "Building 6, Chuangyi Business Park, 70 Qilidian Road",
"addressLocality": "Guilin",
"addressRegion": "Guangxi",
"postalCode": "541004",
"addressCountry": "CHINA"
},
"review": {
"@type": "Review",
"reviewRating": {
"@type": "Rating",
"ratingValue": "5",
"bestRating": "5"
},
"author": {
"@type": "Person",
"name": "Ruby Zhao"
}
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 25.241375,
"longitude": 110.33852
},
"url": "https://www.globalhighlights.com/",
"telephone": "+86 773 2831999",
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Monday",
"opens": "9:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Tuesday",
"opens": "9:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Wednesday",
"opens": "9:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Thursday",
"opens": "9:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Friday",
"opens": "9:00",
"closes": "17:00"
}
]
}
< / script >
< / body >
< / html >