It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: https://www.ctgoodjobs.hk/company-jobs/built-in-pro-limited/00080792

  1.  
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7. <meta name="viewport" content="width=device-width, initial-scale=1">
  8. <meta name="format-detection" content="telephone=no">
  9. <meta name="referrer" content="no-referrer-when-downgrade" />
  10. <title>Jobs in  - May 2024 | CTgoodjobs</title>
  11. <meta name="keywords" content="" />
  12. <meta name="title" content="Jobs in  - May 2024 | CTgoodjobs" />
  13. <meta name="description" content="Find jobs at . Job openings and careers through CTgoodjobs." />
  14. <meta property="og:title" content="Jobs in  - May 2024 | CTgoodjobs" />
  15. <meta property="og:description" content="Find jobs at . Job openings and careers through CTgoodjobs." />
  16. <meta property="og:image" content="https://www.ctgoodjobs.hk/images/logo/ctgoodjobs_og.png" />
  17. <link rel="canonical" href="https://www.ctgoodjobs.hk/company-jobs//00080792" />
  18.  
  19. <link rel="shortcut icon" type="image/x-icon" href="https://www.ctgoodjobs.hk/images/logo/favicon.ico" />
  20.  
  21. <link href="https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,600;1,700&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;1,100;1,300;1,400;1,500;1,700&display=swap" rel="stylesheet">
  22.  
  23. <link rel="stylesheet" href='https://fonts.googleapis.com/css?family=Roboto:300,400,500,700'>
  24.  
  25. <link rel="stylesheet" type="text/css" href="https://res01.ctgoodjobs.hk/css/general/ctgoodjobs.main.min.20240111.v2.css?1=a">
  26.  
  27. <link rel="stylesheet" href="https://res01.ctgoodjobs.hk/css/ctjob/listing/ctgoodjobs.joblisting.min.20240408.v1.css">
  28.  
  29. <script src="/js/general/side-menu.js"></script>
  30. <script>var is_login = false;</script>
  31.  
  32. <script type="text/javascript" src="https://res01.ctgoodjobs.hk/js/general/ctgoodjobs.main.min.20210330.v1.js"></script>
  33.  
  34. <script src="/js/general/iconify.min.js"></script>
  35. <script type="text/javascript" src="/js/general/update-browser.js"></script>
  36.  
  37. <script>
  38. var GAGlobalDimension = [];
  39. GAGlobalDimension[0] = null;
  40. GAGlobalDimension[1] = 'v20240512135212048012379';
  41. GAGlobalDimension[2] = 'ct';
  42. GAGlobalDimension[3] = 'N';
  43. GAGlobalDimension[4] = 'E';
  44. GAGlobalDimension[6] = 'previewlist';
  45. GAGlobalDimension[9] = 'a';
  46. GAGlobalDimension[14] = 'Y';
  47. GAGlobalDimension[16] = '5E4170C37A72187561ECA6725CFCAA3C4EFA2E6C406421D4D9785D279B2BDA55';
  48. GAGlobalDimension[20] = Date.now().toString();
  49. GAGlobalDimension[24] = '609961396';
  50. GAGlobalDimension[28] = 'Y';
  51. </script>
  52. <script async src="https://www.googletagmanager.com/gtag/js?id=AW-995402318"></script>
  53. <script>
  54. window.dataLayer = window.dataLayer || [];
  55. function gtag(){dataLayer.push(arguments);}
  56. gtag('js', new Date());
  57. gtag('config', 'AW-995402318');
  58. </script>
  59. <script async src="https://www.googletagmanager.com/gtag/js?id=G-MXTQL33ENQ"></script>
  60.  
  61. <script type="text/javascript" src="/js/gacode.min.js?s=20230821"></script>
  62. <script type="text/javascript" src="/js/hketvis.min.js?s=20220803"></script>
  63. <script type="text/javascript" src="/js/facebookpixel.js?_v20220526"></script>
  64. <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=452870151753302&ev=PageView&noscript=1"/></noscript>
  65. <script type="text/javascript" src="/js/comScore.min.js "></script>
  66. <noscript><img src="http://b.scorecardresearch.com/p?c1=2&c2=17563924&cv=2.0&cj=1" alt="comScoreTag" /></noscript>
  67.  
  68.  
  69. <script>var app_promote_path = 'https://ctgoodjobshk.page.link';</script>
  70. <script>var objPixelSetting = {};</script><script type='text/javascript'>objPixelSetting.channelFunc = "ct_joblist";objPixelSetting.spCrit = "notGradHotelHomePage";</script>
  71. <script language="javascript" src="/js/pixel-setting-objPixelSetting.js?_v231004"></script>
  72.  
  73. <!--[if lt IE 9]>
  74. <script src="/js/general/html5shiv.min.js"></script>
  75. <script src="/js/general/respond.min.js"></script>
  76. <![endif]-->
  77. <script>var is_fix_apply = true;</script>
  78. </head>
  79. <body id="page-top" class="page-wrapper m-top joblist joblist-prev">
  80.  
  81. <div class="no-print">
  82. <script src="https://accounts.google.com/gsi/client" async defer></script>
  83. <script src="/include/google/oauth2/jwtdecoder.js"></script>
  84.  
  85. <div id="g_id_onload"
  86. data-client_id=763980943412-jjdjm5iejpu5a2rsiu6q8hudoo7e8qbg.apps.googleusercontent.com
  87. data-login_uri = "https://www.ctgoodjobs.hk/include/google/oauth2/?action_type=googleOneTapLogin&to=/ctjob/listing/joblist.asp?top%3Dlist%26company%5Fid%3D00080792%26company%5Fname%3Dbuilt%2Din%2Dpro%2Dlimited"
  88. data-itp_support="true"
  89. data-auto_prompt = "false"
  90. data-moment_callback = "insertGoogleOneTapCookie"
  91. data-cancel_on_tap_outside="false"
  92. >
  93. </div>
  94.  
  95. <script>
  96. var coolDownMinutes = 30;
  97. $(function() {
  98. checkneedclose();
  99.  
  100. }
  101. )  
  102.  
  103.  
  104.  
  105. function checkneedclose() {
  106. if ($.cookie('ct-google-one-tap')== null ) {
  107. // [Info] Google One tap not being displayed in past 30 minutes.
  108. // [step] display google one tap
  109. $("#g_id_onload").attr("data-auto_prompt", true)
  110. }
  111.  
  112. }
  113. function insertGoogleOneTapCookie(notification){
  114. if(notification.isDisplayed()){
  115. if ($.cookie('ct-google-one-tap')== null ) {
  116. var date = new Date();
  117. var minutes = coolDownMinutes;
  118. date.setTime(date.getTime()+(minutes*60*1000))
  119. $.cookie('ct-google-one-tap', '', { expires: date, path: '/' });
  120. insertActionLogAjax('impression','google-one-tap-login','login','');
  121. }
  122. }
  123. }
  124.    
  125. </script>
  126. <style>
  127. #credential_picker_container{
  128. top: 75px;
  129. }
  130. </style>
  131. <nav class="ct-m-nav">
  132. <div class="ct-nav clearfix">
  133. <div class="top-banner-468x60">
  134. <div id="div-gpt-ad-1431567591277-0">
  135. <script>if (!(typeof objPixelSetting === 'undefined')) {googletag.cmd.push(function() { googletag.display("div-gpt-ad-1431567591277-0"); });}</script>
  136. </div>
  137. </div>
  138. <div class="static">
  139. <div class="member-sec">
  140. <a class="prof-nav guest become-mem" href="/member/registration/?to=%2Fctjob%2Flisting%2Fjoblist%2Easp%3Ftop%3Dlist%26company%5Fid%3D00080792%26company%5Fname%3Dbuilt%2Din%2Dpro%2Dlimited" id="menu-bar-reg-button" style="">
  141. <div class="mem-icon">
  142. <i class="fa fa-pencil" aria-hidden="true"></i>
  143. </div>
  144. <div class="prof-txt" >Register</div>
  145. </a>
  146. <a class="prof-nav guest" href="/member/login/?to=%2Fcompany%2Djobs%2Fbuilt%2Din%2Dpro%2Dlimited%2F00080792" id="menu-bar-login-button" style="">
  147. <div class="mem-icon">
  148. <i class="fa fa-user-circle" aria-hidden="true"></i>
  149. </div>
  150. <div class="prof-txt" >Login</div>
  151. </a>
  152. <a class="prof-nav member" href="javascript:void(0)" id="menu-bar-reg-button" style="display:none;">
  153. <div class="mem-icon">
  154. <i class="fa fa-user-circle-o" aria-hidden="true"></i>
  155. </div>
  156. <div class="prof-txt trunc"><script>
  157. if ($.cookie("logincookie")) {
  158. for (element in $.cookie("logincookie").split("&")) {
  159.  if ($.cookie("logincookie").split("&")[element].indexOf("displayname") == 0)
  160. document.write ($.cookie("logincookie").split("&")[element].split("=")[1]);
  161. }
  162. }
  163. </script></div>
  164. <i class="fa fa-chevron-down" aria-hidden="true"></i>
  165. </a>
  166. </div> <!-- End of member-sec -->
  167. <div class="hide-nav">
  168. <a class="more-nav" href="javascript:void(0)">
  169. <span class="more-txt">More</span>
  170. <span class="more-txt-m">Main Menu</span>
  171. <i class="fa fa-chevron-down" aria-hidden="true"></i>
  172. </a>
  173. </div> <!-- End of hide-nav -->
  174. </div>
  175. <ul class="visible-links">
  176. <li ><a class="ct-home" title= "CTgoodjobs.hk" alt="Ctgoodjob.hk" href='https://www.ctgoodjobs.hk'><img src="/images/general/ct-logo.svg"></a></li>
  177. <li class="sub tools">
  178. <a href="#">Career Kit <i class="fa fa-chevron-down" aria-hidden="true"></i></a>
  179. <ul class="submenu">
  180. <li><a href="https://www2.ctgoodjobs.hk/CareerMove" alt="CareerMove"><i class="fa fa-angle-right" aria-hidden="true"></i> CareerMove</a></li>
  181. <li><a href="https://www2.ctgoodjobs.hk/salarycheck" alt="SalaryCheck"><i class="fa fa-angle-right" aria-hidden="true"></i> SalaryCheck</a></li>
  182. <li><a href="https://resources.ctgoodjobs.hk/useful-info" alt="Useful Info"><i class="fa fa-angle-right" aria-hidden="true"></i> Useful Info</a></li>
  183. </ul>
  184. </li>
  185. <li ><a class="menu-company-profile" href="/company/company_profile/index.asp">Company Profiles</a></li>
  186. <li ><a class="menu-learning" href="https://www2.ctgoodjobs.hk/learning">Learning</a></li>
  187. <li ><a class="menu-resources" href='https://resources.ctgoodjobs.hk'>Resources</a></li>
  188.  
  189.                <li ><a class="menu-videos" href='/videos/'>Videos</a></li>
  190. <li class="sub communities">
  191. <a href='#'>Communities <i class="fa fa-chevron-down" aria-hidden="true"></i></a>
  192. <ul class="submenu">
  193. <li><a href="https://finance.ctgoodjobs.hk" alt="Finance" target="_blank"><i class="fa fa-angle-right" aria-hidden="true"></i> Finance</a></li>
  194. <li><a href="https://www.ctgoodjobs.hk/english/graduate/" alt="Graduate" target="_blank"><i class="fa fa-angle-right" aria-hidden="true"></i> Graduate</a></li>
  195. <li><a href="https://cthr.ctgoodjobs.hk" alt="Human Resources" target="_blank"><i class="fa fa-angle-right" aria-hidden="true"></i> Human Resources</a></li>
  196. <li><a href="https://it.ctgoodjobs.hk" alt="IT" target="_blank"><i class="fa fa-angle-right" aria-hidden="true"></i> IT</a></li>
  197. <li><a href="https://ngo.ctgoodjobs.hk" alt="NGO" target="_blank"><i class="fa fa-angle-right" aria-hidden="true"></i> NGO</a></li>
  198. <li><a href="https://pt.ctgoodjobs.hk" alt="PTgoodjobs (搵工快)" target="_blank"><i class="fa fa-angle-right" aria-hidden="true"></i> PTgoodjobs (搵工快)</a></li>
  199. </ul>
  200. </li>
  201. <li><a href="javascript:setLang('c');" id="lang" class="lang"><i class="fa fa-globe" aria-hidden="true"></i> 中文</a></li>
  202. </ul> <!-- End of visible-links -->
  203. <ul class="prof-links sub-nav closed clearfix " style="display:none;">
  204. <li class="profile"><a href='/account/profile/'><div class="icon"><i class="fa fa-id-card-o" aria-hidden="true"></i></div><span>Profile
  205. </span></a></li>
  206. <li class="cv"><a href="/account/cv/"><div class="icon"><i class="fa fa-file-text-o" aria-hidden="true"></i></div><span>CV</span></a></li>
  207. <li class="saved-jobs"><a href="/account/saved_jobs/"><div class="icon"><i class="fa fa-star" aria-hidden="true"></i></div><span>Saved Jobs</span></a></li>
  208. <li class="job-invitation"><a href="/account/job-invitations/"><div class="icon"><i class="fa fa-envelope-open-o" aria-hidden="true"></i></div><span>Job Invitations
  209. </span></a></li>
  210. <li class="setting"><a href="/account/settings/account_setting.asp"><div class="icon"><i class="fa fa-cog" aria-hidden="true"></i></div><span>Settings</span></a></li>
  211. <li class="log-out"><a href='/english/signup/logout.asp?isRedirecToCurrent=Y&url=/company-jobs/built-in-pro-limited/00080792'><span>Logout</span></a></li>
  212. </ul> <!-- End of prof-links -->
  213. <ul class="hidden-links sub-nav dropdown-h closed clearfix"></ul>
  214. </div> <!-- End of ct-nav -->
  215. </nav> <!-- End of ct-m-nav -->
  216. </div>
  217. <script type="text/javascript">
  218. var objSearch = {fulltext: "JC", keywordForQuickSearch: "", salary_type: "", salary_from: "", salary_to: "", hotjob_category: "", job_area: "", emp_type: "", work_model: "", industry: "", experience: "", grade: "", benefit_icon: "", service_type: "", company_service_type: "", search_location: "", education: "", company_id: "00080792", company_name: "built-in-pro-limited", tag: "", tag_job_id: "", job_id: "", ic: "", co: "", jh: "", sp_crit: "", result_uid: "609961396"};
  219. </script>
  220.  
  221. <div id="searchb-panel" class="no-print job-search-criteria" data-spy="affix" data-offset-top="54">
  222. <div class="container">
  223. <div class="row">
  224. <div class="col-xs-8 col-md-8 col-lg-9">
  225. <div class="row">
  226. <div class="col-md-6 no-padding-l search-keyword">
  227. <div class="criteria-w single-choice">
  228. <div class="input-group">
  229. <div id="searchb-type" class="input-group-btn search-range">
  230. <div class="btn btn-primary"><span class="search-type-icon"><i id="searchb-type-icon" class="fa fa-search" aria-hidden="true"></i></span><i class="fa fa-angle-down" aria-hidden="true"></i></div>
  231. </div>
  232. <input type="text" class="form-control keyword" id="search-keyword" placeholder="Enter Job Title, Company Name, Skills" data-err-msg="Please enter at least two characters.">
  233. </div>
  234.  
  235. </div>
  236. </div>
  237. <div class="col-md-6 criteria no-padding-l job-func">
  238. <div class="criteria-w">
  239. <div id="searchb-job-func" class="act-field">
  240. <div class="icon"><i class="fa fa-briefcase" aria-hidden="true"></i></div>
  241. <span class="field-txt trunc" data-msg-default="All Job Functions">All Job Functions</span>
  242. <i class="fa fa-angle-down" aria-hidden="true"></i>
  243. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  244.  
  245. </div>
  246.  
  247. </div> <!-- End of criteria-wrapper -->
  248. </div> <!-- End of job-func -->
  249. </div>
  250. <div class="extra-criteria row">
  251. <div style="display:none;" class="col-md-6 criteria no-padding-l service-type">
  252. <div class="criteria-w">
  253. <div id="searchb-service-type" class="act-field">
  254. <div class="icon"><i class="fa fa-hand-paper-o" aria-hidden="true"></i></div>
  255. <span class="field-txt trunc" data-msg-default="All Service Types">All Service Types</span>
  256. <i class="fa fa-angle-down" aria-hidden="true"></i>
  257. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  258.  
  259. </div>
  260.  
  261. </div> <!-- End of criteria-wrapper -->
  262. </div> <!-- End of service-type -->
  263. <div style="display:none;" class="col-md-6 criteria no-padding-l comp-service-type">
  264. <div class="criteria-w">
  265. <div id="searchb-comp-service-type" class="act-field">
  266. <div class="icon"><i class="fa fa-hand-paper-o" aria-hidden="true"></i></div>
  267. <span class="field-txt trunc" data-msg-default="All Company Service Types">All Company Service Types</span>
  268. <i class="fa fa-angle-down" aria-hidden="true"></i>
  269. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  270.  
  271. </div>
  272.  
  273. </div> <!-- End of criteria-wrapper -->
  274. </div> <!-- End of comp-service-type -->
  275. <div class="col-md-4 criteria no-padding-l employment-term">
  276. <div class="criteria-w">
  277. <div id="searchb-emp-term" class="act-field">
  278. <div class="icon"><span class="ct-icon icon-employment_term"></span></div>
  279. <span class="field-txt trunc" data-msg-default="All Employment Terms">All Employment Terms</span>
  280. <i class="fa fa-angle-down" aria-hidden="true"></i>
  281. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  282.  
  283. </div>
  284.  
  285. </div> <!-- End of criteria-wrapper -->
  286. </div> <!-- End of employment-term -->
  287. <div class="col-md-4 criteria no-padding-l work-model">
  288. <div class="criteria-w">
  289. <div id="searchb-work-model" class="act-field">
  290. <div class="icon"><i class="fa fa-laptop" aria-hidden="true"></i></div>
  291. <span class="field-txt trunc" data-msg-default="All Work Models">All Work Models</span>
  292. <i class="fa fa-angle-down" aria-hidden="true"></i>
  293. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  294.  
  295. </div>
  296.  
  297. </div> <!-- End of criteria-wrapper -->
  298. </div> <!-- End of work model -->
  299. <div class="col-md-4 criteria no-padding-l loc">
  300. <div class="criteria-w">
  301.  
  302. <div id="searchb-loc" class="act-field">
  303. <div class="icon"><i class="fa fa-map-marker" aria-hidden="true"></i></div>
  304. <span class="field-txt trunc" data-msg-default="All Locations">All Locations</span>
  305. <i class="fa fa-angle-down" aria-hidden="true"></i>
  306. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  307.  
  308. </div>
  309.  
  310. </div> <!-- End of criteria-wrapper -->
  311. </div> <!-- End of loc -->
  312. <div class="col-md-6 col-lg-4 criteria no-padding-l job-indus">
  313. <div class="criteria-w">
  314. <div id="searchb-job-ind" class="act-field">
  315. <div class="icon"><span class="ct-icon icon-indus"></span></div>
  316. <span class="field-txt trunc" data-msg-default="All Job Industries">All Job Industries</span>
  317. <i class="fa fa-angle-down" aria-hidden="true"></i>
  318. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  319.  
  320. </div>
  321.  
  322. </div> <!-- End of criteria-wrapper -->
  323. </div> <!-- End of job-indus -->
  324. <div class="col-md-6 col-lg-4 criteria no-padding-l benefit">
  325. <div class="criteria-w">
  326. <div id="searchb-benefit" class="act-field">
  327. <div class="icon"><i class="fa fa-smile-o" aria-hidden="true"></i></div>
  328. <span class="field-txt trunc" data-msg-default="All Benefits">All Benefits</span>
  329. <i class="fa fa-angle-down" aria-hidden="true"></i>
  330. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  331.  
  332. </div>
  333.  
  334. </div> <!-- End of criteria-wrapper -->
  335. </div> <!-- End of benefit -->
  336. <div class="col-md-6 col-lg-4 criteria no-padding-l salary">
  337. <div class="criteria-w">
  338. <div id="searchb-sal" class="act-field">
  339. <div class="icon"><i class="fa fa-usd" aria-hidden="true"></i></div>
  340. <span class="field-txt trunc">
  341. <span class="salary-period">Monthly</span>&nbsp;from&nbsp;$<span class="salary-from">0</span>&nbsp;to&nbsp;$<span class="salary-to">100000+</span>
  342. </span>
  343. <i class="fa fa-angle-down" aria-hidden="true"></i>
  344.  
  345. </div>
  346.  
  347. </div> <!-- End of criteria-wrapper -->
  348. </div> <!-- End of salary -->
  349. <div class="col-md-6 col-lg-4 criteria no-padding-l work-exp">
  350. <div class="criteria-w">
  351. <div id="searchb-work-exp" class="act-field">
  352. <div class="icon"><span class="ct-icon icon-exp"></span></div>
  353. <span class="field-txt trunc" data-word-from="From" data-word-to="to" data-word-yr="years">From&nbsp;0&nbsp;to&nbsp;20+&nbsp;years</span>
  354. <i class="fa fa-angle-down" aria-hidden="true"></i>
  355.  
  356. </div>
  357.  
  358. </div> <!-- End of criteria-wrapper -->
  359. </div> <!-- End of work-exp -->
  360. <div class="col-md-6 col-lg-4 criteria no-padding-l edu-lv">
  361. <div class="criteria-w">
  362. <div id="searchb-edu-lv" class="act-field">
  363. <div class="icon"><i class="fa fa-graduation-cap" aria-hidden="true"></i></div>
  364. <span class="field-txt trunc" data-msg-default="All Education Levels">All Education Levels</span>
  365. <i class="fa fa-angle-down" aria-hidden="true"></i>
  366. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  367.  
  368. </div>
  369.  
  370. </div> <!-- End of criteria-wrapper -->
  371. </div> <!-- End of edu-lv -->
  372. <div class="col-md-6 col-lg-4 criteria no-padding-l career-lv">
  373. <div class="criteria-w">
  374. <div id="searchb-career-lv" class="act-field">
  375. <div class="icon"><span class="ct-icon icon-career_lv"></span></div>
  376. <span class="field-txt trunc" data-msg-default="All Career Levels">All Career Levels</span>
  377. <i class="fa fa-angle-down" aria-hidden="true"></i>
  378. <span class="clear-btn"><i class="fa fa-times" aria-hidden="true"></i></span>
  379.  
  380. </div>
  381.  
  382. </div> <!-- End of criteria-wrapper -->
  383. </div> <!-- End of career-lv -->
  384. </div> <!-- End of extra-criteria -->
  385. </div>
  386. <div class="col-xs-4 col-md-4 col-lg-3">
  387. <div class="row">
  388. <div class="col-xs-10 col-md-8 search-btn no-padding-l">
  389. <a id="searchb-submit-btn" href="/ctjob/listing/joblist.asp" class="btn btn-def submit-hl-btn" onclick="eraseCookie('joblistSearchId');"><span class="btn-txt">Search</span></a>
  390. </div>
  391. <div class="col-xs-2 col-md-6 open-filter no-padding">
  392. <span id="searchb-modal-btn" class="open-filter"><i class="fa fa-sliders" aria-hidden="true"></i></span>
  393. </div>
  394. <div class="col-md-4 more-options">
  395. <span class="more-opt" data-word-more="More Options" data-word-less="Fewer Options">More Options&nbsp;<i class="fa fa-chevron-down" aria-hidden="true"></i></span>
  396. </div>
  397. </div>
  398. </div>
  399. </div>
  400. </div>
  401. <!-- Trending Jobs -->
  402. <section class="trending-jobs" style="display:none">
  403. <div class="container">
  404. <div class="row">
  405. <div class="col title">
  406. <i class="fas fa-fire"></i>Trending Jobs
  407. </div>
  408. <div class="col flex-grow-1">
  409. <div class="swiper tag-swiper">
  410. <div class="swiper-wrapper">
  411. <div class="swiper-slide">
  412. <a class="btn" href="/ctjob/listing/joblist.asp?hotjob_category=305"><img src="/images/home/graduation-hat.svg" width="20" class="grad-cap" />Graduate Jobs</a>
  413. </div>
  414. <style>
  415. /* Growth - Promote Part-time Jobs in Trending Jobs */
  416. .trending-jobs .part-time {
  417. display: -webkit-box;
  418. display: -ms-flexbox;
  419. display: flex;
  420. }
  421.  
  422. .trending-jobs .part-time .stop-watch {
  423. width: 16px;
  424. display: -webkit-box;
  425. display: -ms-flexbox;
  426. display: flex;
  427. -webkit-box-align: center;
  428. -ms-flex-align: center;
  429. align-items: center;
  430. margin-right: 4px;
  431. }
  432.  
  433. .trending-jobs .part-time .stop-watch div {
  434. position: relative;
  435. width: 100%;
  436. height: 0;
  437. padding-bottom: 100%;
  438. }
  439.  
  440. .trending-jobs .part-time .stop-watch div svg {
  441. width: 100%;
  442. height: 100%;
  443. position: absolute;
  444. top: 0;
  445. left: 0;
  446. overflow: visible;
  447. }
  448.  
  449. .trending-jobs .part-time .stop-watch div svg #button-top {
  450. -webkit-animation: button-top 4s ease 0s infinite;
  451.  animation: button-top 4s ease 0s infinite;
  452. }
  453.  
  454. .trending-jobs .part-time .stop-watch div svg #watch-hand {
  455.  transform-origin: 50% 55.85%;
  456.  -webkit-animation: watch-hand 4s cubic-bezier(0.93, 0.3, 0.3, 0.93) 0.25s infinite;
  457.  animation: watch-hand 4s cubic-bezier(0.93, 0.3, 0.3, 0.93) 0.25s infinite;
  458. }
  459. @-webkit-keyframes button-top {
  460. 0% {
  461. transform: translate(0, 0);
  462. }
  463. 2% {
  464. transform: translate(0, -8px);
  465. }
  466. 5% {
  467. transform: translate(0px, 15px);
  468. }
  469. 8% {
  470. transform: translate(0, -5px);
  471. }
  472. 10% {
  473. transform: translate(0, 0);
  474. }
  475. }
  476.  
  477. @keyframes button-top {
  478. 0% {
  479. transform: translate(0, 0);
  480. }
  481. 2% {
  482. transform: translate(0, -8px);
  483. }
  484. 5% {
  485. transform: translate(0px, 15px);
  486. }
  487. 8% {
  488. transform: translate(0, -5px);
  489. }
  490. 10% {
  491. transform: translate(0, 0);
  492. }
  493. }
  494.  
  495. @-webkit-keyframes watch-hand {
  496. 0% {
  497. transform: rotate(0deg);
  498. }
  499. 25% {
  500. transform: rotate(360deg);
  501. }
  502. 100% {
  503. transform: rotate(360deg);
  504. }
  505. }
  506.  
  507. @keyframes watch-hand {
  508. 0% {
  509. transform: rotate(0deg);
  510. }
  511. 25% {
  512. transform: rotate(360deg);
  513. }
  514. 100% {
  515. transform: rotate(360deg);
  516. }
  517. }
  518. </style>
  519. <div class="swiper-slide">
  520. <a class="btn part-time" href="/part-time-jobs">
  521. <div class="stop-watch">
  522. <div>
  523. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256">
  524. <g id="button-top">
  525. <path fill="none" stroke="#292929" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M128 8v40"/>
  526. <path fill="none" stroke="#292929" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M98 8h60"/>
  527. </g>
  528. <circle cx="128" cy="150" r="105" fill="#fff" stroke="#1f81b9" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"/>
  529. <path id="watch-hand" fill="none" stroke="#292929" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M128 81v72"/>
  530. </svg>
  531. </div>
  532. </div>
  533. <span class="text">Part-time Jobs</span>
  534. </a>
  535. </div>
  536. <div class="swiper-slide">
  537. <a class="btn" href="https://www.ctgoodjobs.hk/r/ptgoodjobs-index-qr">WhatsApp Frontline Jobs</a>
  538. </div>
  539. <div class="swiper-slide">
  540. <a class="btn" href="/ctjob/listing/joblist.asp?salary_type=MON&salary_from=25000&salary_to=999999">$25K+ Jobs</a>
  541. </div>
  542. <div class="swiper-slide">
  543. <a class="btn" href="/jobs/sales-cs-business-devpt">Sales & CS Jobs</a>
  544. </div>
  545. <div class="swiper-slide">
  546. <a class="btn" href="/jobs/hotel-catering-club">Hotel & Catering Jobs</a>
  547. </div>
  548. <div class="swiper-slide">
  549. <a class="btn" href="/jobs/government-public-sector">Govt / Public Sector Jobs</a>
  550. </div>
  551. <div class="swiper-slide">
  552. <a class="btn" href="/jobs/ngo-social-service">NGO Jobs</a>
  553. </div>
  554. </div>
  555. </div>
  556. </div>
  557. </div>
  558. </div>
  559. </section>
  560. <!-- End of Trending Jobs -->
  561. </div>
  562.  
  563. <script src="/datacache/snapshot/snapshot-searchJobsData.js?_v240119121010"></script>
  564.  
  565.  
  566. <section class="jl-list jl-prev" data-lang-batchapply-empty-msg="Please select at least one job" data-lang-batchapply-added="Added to batch apply list" data-lang-batchapply-removed="Removed from batch apply list" data-lang-batchapply-max-msg="You cannot apply more than %_maxValue_% jobs in a batch" data-lang-save-job="Save Job" data-lang-save-job-saved="Saved" data-lang-job-msg-saved="Job saved"  data-lang-job-msg-unsaved="Job unsaved" data-lang-job-msg-save-job-after-login="<a href='javascript:LoginFromToast()'>Login</a>&nbsp;or&nbsp;<a href='javascript:RegisterFromToast()'>Register</a>&nbsp;as CT member to save jobs">
  567.  
  568. <script>
  569. if($("#searchb-panel").length) {
  570.    setTimeout(function() {
  571. $.ajax({url: '/ajax/ctjob/listing/joblist-related-searches.asp', type: 'POST', data: {"sp_crit": "", "s":"20240512135213"}, async: true,  
  572. success: function(response) {
  573. if (response.length) {
  574. if($("#searchb-panel .quick-search.h-list").length) {
  575. $("#searchb-panel .quick-search").html('<li>Related Searches:</li>'+response);
  576. } else {
  577. $("#searchb-panel .container").eq(0).append('<div class="row"><ul class="quick-search h-list"><li>Related Searches:</li>'+response+'</ul></div>');
  578. }
  579. $("#searchb-panel .quick-search").find('a').click(function(e) {insertActionLogAjax('click','joblist','suggested-title-tag',$(this).attr('id'));});
  580. }else{
  581.                    $("body").addClass("no-related-search");
  582.                }
  583. }
  584. });
  585.    }, 100);
  586. }
  587. </script>
  588.  
  589. <script>
  590. $(".jl-list").addClass("jl-no-result");
  591. $(document).ready(function() {
  592. document.title = document.title.replace('CTgoodjobs','No jobs matched | CTgoodjobs');
  593. });
  594. </script>
  595. <div class="container">
  596. <div class="row">
  597. <div class="no-result">
  598. <p class="headline">Oops! No jobs matching your search criteria.</p>
  599. <p>We suggest that you may ...</p>
  600. <ul>
  601. <li>Try more general keywords</li>
  602. <li>Try different keywords / Job Title / Company Name</li>
  603. <li>Check for spelling mistakes in your keywords and remove unnecessary characters such as "/"or "-"</li>
  604. </ul>
  605. <div class="other-links">
  606. <a href="/">Back to CTgoodjobs</a><!--span>|</span><a href="/browse-jobs/job-function.asp">Browse jobs</a-->
  607. </div>
  608. <!-- recommend-jobs -->
  609. <div id="recommended-jobs-sec" class="recommended-jobs">
  610. <div class="swiper job-swiper">
  611. <h2 class="sec-title">
  612. Recommended Jobs
  613. <div class="d-flex hidden">
  614. <div class="swiper__button-prev"><i class="cus-icon cus-circle-arrow-l"></i></div>
  615. <div class="swiper__button-next ms-2 ms-lg-3"><i class="cus-icon cus-circle-arrow-r"></i></div>
  616. </div>
  617. </h2>
  618. <img class="ajax-loader" src="/images/ajax-loader.gif">
  619. <div class="swiper-wrapper hidden">
  620. </div>
  621. </div>
  622. <a id="recommended-more" class="text-link mx-auto view-more hidden" href="/account/recommended-jobs/">More Recommended Jobs <i class="fas fa-arrow-right icon--right"></i></a>
  623. </div>
  624. <!-- End of recommend-jobs -->
  625. <div class="text-center w-100 mt-5">
  626. <!-- /93858332/CT_Jobs/RW_CT_Job_List_LB_A -->
  627. <div id='div-gpt-ad-1691741027963-0' style='min-width: 300px; min-height: 120px;'>
  628. <script>
  629. googletag.cmd.push(function() { googletag.display('div-gpt-ad-1691741027963-0'); });
  630. </script>
  631. </div>
  632. </div>
  633. <i class="fa fa-search" aria-hidden="true"></i>
  634. </div>
  635. </div>
  636. </div>
  637.  
  638. </section>
  639. <div id="similar-job-popup" class="popup__wrapper popup--similar-jobs new-layout no-print"
  640. data-lang-num-viewed="people viewed this job as well"
  641. data-lang-another="Another similar job recommend for you!"
  642. data-lang-view-job="View Job"></div>
  643.  
  644.  
  645.  
  646. <div id="exteranlApply" class="modal modal--plain fade new-layout" tabindex="-1" aria-labelledby="exteranlApplyModalLabel" aria-hidden="true" data-undo-msg="This job application record has been removed">
  647. <div class="modal-dialog modal-dialog-centered">
  648. <div class="modal-content">
  649. <div class="modal-header">
  650. <a href="javascript:void(0)" class="close" data-dismiss="modal" aria-label="Close"><span class="iconify" data-icon="ep:close"></span></a>
  651. </div>
  652. <div class="modal-body">
  653. <i class="cus-icon cus-circle-check"></i>
  654. <h3>Added to your applied jobs.</h3>
  655. <p>You can browse your job application history <a href="/account/applied_jobs/">here</a>.</p>
  656. <a href="javascript:void(0)" class="btn--undo" data-dismiss="modal" aria-label="Undo">Undo this action</a>
  657. <div class="similar-jobs">
  658. Looking for similar jobs?
  659. <a href="javascript:void(0)" data-dismiss="modal" class="btn btn--round btn-more">View Jobs<i class="fas fa-arrow-right icon--right"></i></a>
  660. </div>
  661. </div>
  662. </div>
  663. </div>
  664. </div>
  665. <!-- Saved Jobs - Popup -->
  666. <div class="popup__wrapper popup--saved-jobs new-layout no-print" style="display: none;">
  667. <div class="popup popup--icon-msg theme--dark">
  668. <div class="popup__content">
  669. <img src="/images/ctjob/listing/popup-saved-jobs.svg" width="48">
  670. <div class="content--right">
  671. <div class="content"></div>
  672. <a href="/account/saved_jobs/" target="_blank" class="btn btn--small btn--round btn--gradient-blue-green">View Saved Jobs</a>
  673. </div>
  674. </div>
  675. <a href="javascript:void(0)" class="close"><span class="iconify" data-icon="ep:close"></span></a>
  676. </div>
  677. </div>
  678. <!-- End of Saved Jobs - Popup -->
  679.  
  680. <div class="review-popup">
  681. <h5 class="review-title">How would you rate your professional skill level in your field?</h5>
  682. <ul class="rate">
  683. <li>
  684. <input class="rate-input" type="radio" name="rate" value="1" id="rate_1">
  685. <label class="rate-label" for="rate_1">1</label>
  686. </li>
  687. <li>
  688. <input class="rate-input" type="radio" name="rate" value="2" id="rate_2">
  689. <label class="rate-label" for="rate_2">2</label>
  690. </li>
  691. <li>
  692. <input class="rate-input" type="radio" name="rate" value="3" id="rate_3">
  693. <label class="rate-label" for="rate_3">3</label>
  694. </li>
  695. <li>
  696. <input class="rate-input" type="radio" name="rate" value="4" id="rate_4">
  697. <label class="rate-label" for="rate_4">4</label>
  698. </li>
  699. <li>
  700. <input class="rate-input" type="radio" name="rate" value="5" id="rate_5">
  701. <label class="rate-label" for="rate_5">5</label>
  702. </li>
  703. </ul>
  704. <div class="rate-indicator clearfix"><span class="least">Weak</span><span class="most">Strong</span></div>
  705. <div class="thanks">
  706. Visit Now >><br/><a href="https://www2.ctgoodjobs.hk/learning" style="color:#69abcb" target="_blank">https://www2.ctgoodjobs.hk/learning</a>
  707. </div>
  708. <hr>
  709. <a href="javascript:void(0)" class="add-cm"><i class="fa fa-commenting-o" aria-hidden="true"></i> What do you want to learn?</a>
  710. <div class="extra-cm">
  711. <textarea maxlength="2000" rows="3" placeholder="Leave your comments here" id="review-popup-comments"></textarea>
  712. <a href="#" class="btn btn-def"><span class="btn-txt">Submit</span></a>
  713. </div>
  714. <a href="javascript:void(0)" class="close-popup"><i class="fa fa-times" aria-hidden="true"></i></a>
  715. <input type="hidden" id="review-popup-val" value="" />
  716. </div>
  717. <script>
  718. $(".review-popup label").click(function(){
  719. $(".review-title").html('Find the right course for your career!');
  720. });
  721. $(".review-popup .btn-def").click(function(){
  722. $(".review-title").html('Find the right course for your career!');
  723. });
  724. </script>
  725. <!-- Report This Job Modal -->
  726. <div class="modal fade new-layout" id="report-jd" data-lang-report-reason-err="Please select at least one reason." data-lang-report-reason-input-comment-msg="Please write your comments." data-lang-report-your-email="Email (optional)" data-lang-report-reason-input-valid-email="Please enter a valid email address" data-lang-report-submited="Report submitted">
  727. <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable">
  728. <div class="modal-content">
  729. <div class="modal-header">
  730. <h5 class="modal-title"><i class="fas fa-exclamation-triangle icon--left"></i> Report this job</h5>
  731. <a href="javascript:void(0)" class="close" data-dismiss="modal" aria-label="Close"><span class="iconify" data-icon="ep:close"></span></a>
  732. </div>
  733. <div class="modal-body">
  734. <div class="form p-0">
  735. <p class="mt-0">
  736. You’re now reporting <span id="report-jd-title"></span>.
  737. </p>
  738. <p>
  739. Let us know your concern over this job and we'll investigate.
  740. </p>
  741. <div class="form__item">
  742. <div id="report-jd-err-reason" class="field__error field__error--general" style="display:none">
  743. <i class="fas fa-exclamation-triangle"></i> Please select at least one reason.
  744. </div>
  745.  
  746. <div class="checkbox--wrapper">
  747. <input id="report-reason-01" name="reason" value="A" type="checkbox">
  748. <label for="report-reason-01">Misleading job description</label>
  749. </div>
  750. <div class="checkbox--wrapper">
  751. <input id="report-reason-02" name="reason" value="B" type="checkbox">
  752. <label for="report-reason-02">Inappropriate / Discriminatory</label>
  753. </div>
  754.  
  755. <div class="checkbox--wrapper">
  756. <input id="report-reason-03" name="reason" value="C" type="checkbox">
  757. <label for="report-reason-03">Inaccurate contact information</label>
  758. </div>
  759.  
  760. <div class="checkbox--wrapper">
  761. <input id="report-reason-others" name="reason" value="O" type="checkbox">
  762. <label for="report-reason-others">Other comments</label>
  763. </div>
  764.  
  765. <div id="report-jd-comment" class="form__item report__comment">
  766. <div class="form__field form__field--error">
  767. <textarea class="field__textarea" id="comments" name="comments" rows="5" placeholder="Your comments"></textarea>
  768. </div>
  769. <div class="textarea__supp">
  770. <div id="report-jd-err-comments" class="field__error" style="display:none">
  771. <i class="fas fa-exclamation-triangle"></i> Please write your comments.
  772. </div>
  773. <label class="field__limit">Max. 2000 characters</label>
  774. </div>
  775. </div>
  776.  
  777. <div class="form__item email">
  778. <label class="form__label">Email (optional)</label>
  779. <div class="form__field form__field--withIcon">
  780. <input type="email" class="field__input" id="email" name="email">
  781. <i class="fas fa-envelope field__icon"></i>
  782. </div>
  783. <div id="report-jd-err-email" class="field__error" style="display:none">
  784. <i class="fas fa-exclamation-triangle"></i> Please enter a valid email address
  785. </div>
  786. </div>
  787. </div>
  788. </div>
  789. </div>
  790. <div class="modal-footer">
  791. <button id="btn-report-jd-cancel" class="btn btn--round btn--text btn--cancel" data-dismiss="modal" aria-label="Close">Cancel</button>
  792. <button id="btn-report-jd-submit" class="btn btn--round btn--submit" aria-label="Submit">Submit</button>
  793. </div>
  794. </div>
  795. </div>
  796. </div> <!-- End of Report This Job Modal -->
  797. <div class="modal modal--confirm fade new-layout" id="repeatedApplication" tabindex="-1" aria-labelledby="repeatedApplicationModalLabel" aria-hidden="true"
  798. data-msg-submitted="Your job application has been submitted"
  799. data-lang-msg="You’ve already applied this job before. Apply again?"
  800. data-lang-external-msg="You’ve already applied this job on their website. Apply this job again?"
  801. data-lang-apply="Apply"
  802. data-lang-1-click-apply="1-Click Apply"
  803. data-lang-external-apply="Apply on company website">
  804. <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable">
  805. <div class="modal-content">
  806. <div class="modal-header">
  807. <h5 class="modal-title" id="repeatedApplicationLabel"><i class="fas fa-exclamation-triangle icon--left"></i> Repeated Application</h5>
  808. <a href="javascript:void(0)" class="close" data-dismiss="modal" aria-label="Close"><span class="iconify" data-icon="ep:close"></span></a>
  809. </div>
  810. <div class="modal-body"></div>
  811. <div class="modal-footer">
  812. <a class="btn btn--round btn--text btn--cancel" data-dismiss="modal" aria-label="Close">Cancel</a>
  813. <a class="btn btn--round btn--apply" aria-label="Apply"></a>
  814. </div>
  815. </div>
  816. </div>
  817. </div>
  818.  
  819.  
  820. <div class="no-print">
  821. <footer>
  822. <div class="container site-info">
  823. <div class="row">
  824. <ul class="seven-col footer-list" id="f-job-seeker">
  825. <h4 class="header" data-target="#job-seeker-nav">Job Seekers<i class="fa fa-angle-down" aria-hidden="true"></i></h4>
  826. <ul class="footer-subnav" id="job-seeker-nav">
  827. <li><a href="https://www.ctgoodjobs.hk" alt="Find Jobs">Find Jobs</a></li>
  828. <li><a href="https://www.ctgoodjobs.hk/browse-jobs/job-function.asp" alt="Browse Jobs">Browse Jobs</a></li>
  829. <li><a href="https://www.ctgoodjobs.hk/account/cv/" alt="Upload CV">Upload CV</a></li>
  830. <li><a href="https://www.ctgoodjobs.hk/account/job-alert/" alt="Job Alert">Job Alert</a></li>
  831. </ul>
  832. </ul>
  833. <ul class="seven-col footer-list" id="f-employers">
  834. <h4 class="header" data-target="#employers-nav">Employers<i class="fa fa-angle-down" aria-hidden="true"></i></h4>
  835. <ul class="footer-subnav" id="employers-nav">
  836. <li><a href="https://cthr.ctgoodjobs.hk" alt="Post a Job" target="_blank">Post a Job</a></li>
  837. <li><a href="https://cthr.ctgoodjobs.hk" alt="Search Candidates" target="_blank">Search Candidates</a></li>
  838. <li><a href="https://cthr.ctgoodjobs.hk" alt="Advertise with Us" target="_blank">Advertise with us</a></li>
  839. </ul>
  840. </ul>
  841. <ul class="seven-col footer-list" id="f-career-kit">
  842. <h4 class="header" data-target="#career-kit-nav">Career Kit<i class="fa fa-angle-down" aria-hidden="true"></i></h4>
  843. <ul class="footer-subnav" id="career-kit-nav">
  844. <li><a href="https://www2.ctgoodjobs.hk/CareerMove">CareerMove</a></li>
  845. <li><a href="https://www2.ctgoodjobs.hk/salarycheck" alt="SalaryCheck">SalaryCheck</a></li>
  846. <li><a href="https://resources.ctgoodjobs.hk/useful-info">Useful Info</a></li>
  847. </ul>
  848. </ul>
  849. <ul class="seven-col footer-list" id="f-learning">
  850. <h4 class="header" data-target="#learning-nav">Learning<i class="fa fa-angle-down" aria-hidden="true"></i></h4>
  851. <ul class="footer-subnav" id="learning-nav">
  852. <li><a href="https://www2.ctgoodjobs.hk/learning">Find Courses</a></li>
  853. <li><a href="https://www2.ctgoodjobs.hk/Learning/Career">Career</a></li>
  854. <li><a href="https://www.ctgoodjobs.hk/article/category/1296/%E9%80%B2%E4%BF%AE%E6%94%BB%E7%95%A5">Learning Insight</a></li>
  855. <li><a href="https://www.ctgoodjobs.hk/learning-cms/">Advertise a Course</a></li>
  856. </ul>
  857. </ul>
  858. <ul class="seven-col footer-list" id="f-resources">
  859. <h4 class="header" data-target="#res-nav">Resources<i class="fa fa-angle-down" aria-hidden="true"></i></h4>
  860. <ul class="footer-subnav" id="res-nav">
  861. <li><a href="https://resources.ctgoodjobs.hk/article/category/1339/%E8%81%B7%E5%A0%B4%E6%96%B0%E8%81%9E" alt="Career News ">Career News </a></li>
  862. <li><a href="https://resources.ctgoodjobs.hk/article/category/1227/%e8%81%b7%e5%a0%b4%e6%95%85%e4%ba%8b" alt="Career Stories ">Career Stories </a></li>
  863. <li><a href="https://resources.ctgoodjobs.hk/article/category/1230/%e8%81%b7%e5%a0%b4%e8%b2%bc%e5%a3%ab" alt="Career Advice ">Career Advice </a></li>
  864. <li><a href="https://resources.ctgoodjobs.hk/article/category/1351/%E8%81%B7%E5%A0%B4%E5%85%AB%E5%8D%A6" alt="Career Gossip">Career Gossip</a></li>
  865. <li><a href="https://resources.ctgoodjobs.hk/article/career-guide/1285/%e6%b1%82%e8%81%b7%e6%8c%87%e5%8d%97" alt="Career Guide ">Career Guide </a></li>
  866. <li><a href="https://resources.ctgoodjobs.hk/article/industry" alt="Industry Focus">Industry Focus</a></li>
  867. <li><a href="https://resources.ctgoodjobs.hk/useful-info" alt="Useful Info">Useful Info</a></li>
  868. <li><a href="https://resources.ctgoodjobs.hk/columnist" alt="Columnists">Columnists</a></li>
  869. </ul>
  870. </ul>
  871. <ul class="seven-col footer-list" id="f-communities">
  872. <h4 class="header" data-target="#comm-nav">Communities<i class="fa fa-angle-down" aria-hidden="true"></i></h4>
  873. <ul class="footer-subnav" id="comm-nav">
  874. <li><a href="https://finance.ctgoodjobs.hk/" alt="Finance" target="_blank">Finance</a></li>
  875. <li><a href="https://www.ctgoodjobs.hk/english/graduate/" alt="Graduate"  target="_blank">Graduate</a></li>
  876. <li><a href="https://cthr.ctgoodjobs.hk/" alt="Human Resources" target="_blank" target="_blank">Human Resources</a></li>
  877. <li><a href="https://it.ctgoodjobs.hk" alt="IT" target="_blank">IT</a></li>
  878. <li><a href="https://ngo.ctgoodjobs.hk" alt="NGO" target="_blank">NGO</a></li>
  879. <li><a href="https://pt.ctgoodjobs.hk" alt="PTgoodjobs (搵工快)">PTgoodjobs (搵工快)</a></li>
  880. </ul>
  881. </ul>
  882. <ul class="seven-col footer-list" id="f-about-us">
  883. <h4 class="header" data-target="#about-us-nav">About Us<i class="fa fa-angle-down" aria-hidden="true"></i></h4>
  884. <ul class="footer-subnav" id="about-us-nav">
  885. <li><a href="https://www.ctgoodjobs.hk/about-ctgoodjobs" alt="About CTgoodjobs">About CTgoodjobs</a></li>
  886. <li><a href="https://www.ctgoodjobs.hk/hket-group" alt="HKET Group">HKET Group</a></li>
  887. <li><a href="https://www.ctgoodjobs.hk/ctjob/listing/joblist.asp?top=list&c=AL&company_id=00024236" alt="Career with Us">Career with Us</a></li>
  888. <li><a href="https://www.ctgoodjobs.hk/contact-us" alt="Contact Us">Contact us</a></li>
  889. <li><a href="https://www.ctgoodjobs.hk/events" alt="Events and Promotions">Events and Promotions</a></li>
  890. </ul>
  891. </ul>
  892. </div>
  893. </div>
  894. <div class="container-fluid copyright-w">
  895. <div class="container">
  896. <div class="row top">
  897. <div class="col-lg-5 logo">
  898. <ul class="inline-list" id="logo">
  899. <li><a href="https://www.ctgoodjobs.hk" title="CTgoodjobs.hk"><img src="/images/general/ctlogo-w-p@2x.png"></a></li>
  900. </ul>
  901. <ul class="inline-list" id="mem-logo">
  902. <li>A member of</li>
  903. <li><a href="http://www.hk2a.com/index.php" target="_blank" title="The Hong Kong Advertisers Association"><img src="/images/general/hk2a@2x.png"></a></li>
  904. <li><a href="http://www.caringcompany.org.hk" target="_blank" title="Caring Company"><img src="/images/general/caring-company@2x.png"></a></li>
  905. </ul>
  906. </div>
  907. <div class="col-lg-7 social-media">
  908. <ul class="inline-list" id="app">
  909. <li><a href="https://www.ctgoodjobs.hk/cp/ct-app-2014-ctapp-itunes" target="_blank" alt="App Store" title="Download CTgoodjobs App on App Store"><img src="/images/general/appstore@2x.png" height="40"></a></li>
  910. <li><a href="https://www.ctgoodjobs.hk/cp/ct-app-2014-ctapp-google-play" target="_blank" alt="Google Play" title="Download CTgoodjobs App on Google Play"><img src="/images/general/googleplay@2x.png" height="40"></a></li>
  911. <li class="qrcode"><a href="https://www.ctgoodjobs.hk/cp/ctapp.asp?source=FooterQRcode" target="_blank" alt="CTgoodjobs App QR Code" title="Download CTgoodjobs App"><img src="/images/general/ctapp-qr-s.png" height="80"/></a></li>
  912. </ul>
  913. <ul class="inline-list" id="social-media">
  914. <li class="media-item"><a href="https://www.facebook.com/CTgoodjobs/" target="_blank" alt="Facebook" title="Follow us on Facebook"><i class="fa fa-facebook" aria-hidden="true"></i></a></li>
  915. <li class="media-item"><a href="https://www.instagram.com/ctgoodjobs_hk/" target="_blank" alt="Instagram" title="Follow us on Instagram"><i class="fa fa-instagram" aria-hidden="true"></i></a></li>
  916. <li class="media-item"><a href="https://www.linkedin.com/company/ctgoodjobs-hk/" target="_blank" alt="LinkedIn" title="Follow us on LinkedIn"><i class="fa fa-linkedin" aria-hidden="true"></i></a></li>
  917. <li class="media-item"><a href="https://www.youtube.com/careertimes/" target="_blank" alt="Youtube" title="Follow us on Youtube"><i class="fa fa-youtube" aria-hidden="true"></i></a></li>
  918. </ul>
  919. </div>
  920. </div>
  921. <div class="row bottom">
  922. <div class="col-md-6 col-md-push-6 tnc">
  923. <ul class="inline-list footer-list" id="tnc">
  924. <li><a href="https://www.ctgoodjobs.hk/sitemap" alt="Sitemap">Sitemap</a></li>
  925. <li><a href="https://www.ctgoodjobs.hk/english/faq/default.asp" alt="FAQ">FAQ</a></li>
  926. <li><a href="https://www.ctgoodjobs.hk/privacy-policy" alt="Privacy Policy">Privacy Policy</a></li>
  927. <li><a href="https://www.ctgoodjobs.hk/english/terms/terms.asp" alt="Terms & Conditions">Terms & Conditions</a></li>
  928. </ul>
  929. </div>
  930. <div class="col-md-6 col-md-pull-6 copyright">
  931. &copy; Copyright 2024 Career Times Online Limited. All rights reserved.
  932. </div>
  933. </div>
  934. </div>
  935. </div>
  936. </footer>
  937. <a href="#page-top" class="page-scroll sticky-back-to-top"><span class="glyphicon glyphicon-chevron-up"></span></a>
  938.  
  939. </div>
  940.  
  941.  
  942. <!-- GET reCAPTCHA START -->
  943. <script src="https://www.google.com/recaptcha/api.js" async defer></script>
  944. <style type="text/css">
  945. #recaptcha-m .modal-dialog {
  946.    width: fit-content;
  947. }
  948. #recaptcha-m .v-align .modal-content {
  949.    width: fit-content;
  950. }
  951. </style>
  952. <script>
  953.    var myCaptcha = null;
  954.  
  955. function verifyCallback() {
  956. var response = grecaptcha.getResponse();
  957.  
  958. if(response.length == 0) {
  959. $("#recaptcha-err").show();                      
  960. }
  961. else {                                      
  962. $.ajax({
  963. url: "/ajax/recaptcha/check-captcha.asp",
  964. contentType: "application/x-www-form-urlencoded;charset=utf-8",
  965. type: "post",
  966. async: false,
  967. data: { resp: response, type: "quick-apply", id: $("#recaptcha-content").attr("data-id") },
  968. success: function(data) {        
  969. if (data == "Y") {
  970. $("#recaptcha-err").hide();
  971. $('#recaptcha-m').modal('toggle');
  972. quickApplyAjax($("#m_jobid_hidden").val(), $("#recaptcha-content").attr("data-id"));
  973. }
  974. else {
  975. renderCaptcha();
  976. $("#recaptcha-err").show();
  977. }
  978. }
  979. });
  980. }
  981. }
  982.  
  983. function renderCaptcha() {
  984. if (myCaptcha === null) {
  985. myCaptcha = grecaptcha.render('recaptcha-content', {
  986.  'sitekey' : '6Lf0UUYaAAAAAA82HXgrcDt_oVn6Im1drtuMYNVV',
  987.  'callback' : verifyCallback,
  988.  'theme' : 'light'
  989. });                            
  990. }
  991. else {
  992. grecaptcha.reset(myCaptcha);
  993. $("#recaptcha-content").show();
  994. }
  995. }
  996.  
  997.  $(function () {
  998.  $('#recaptcha-m').on('shown.bs.modal', function (e) {
  999.  renderCaptcha();
  1000. })
  1001. });
  1002.  
  1003. </script>
  1004. <!-- recaptcha Modal -->
  1005. <div id="recaptcha-m" class="modal modal-msg fade" role="dialog">
  1006. <div class="v-align">
  1007. <div class="modal-dialog v-align-center">
  1008. <!-- Modal content-->
  1009. <div class="modal-content" style="margin: 0 auto;">
  1010. <div class="modal-body">
  1011. <div id="recaptcha-content" data-id=""></div>
  1012. <div id="recaptcha-err" class="alert alert-danger" role="alert" style="display: none;">
  1013. <i class="fa fa-exclamation-triangle" aria-hidden="true"></i>Please finish reCAPTCHA
  1014. </div>
  1015. </div>
  1016. </div>
  1017. </div>
  1018. </div>
  1019. </div> <!-- End of recaptcha-m -->
  1020. <!-- GET reCAPTCHA END -->
  1021.  
  1022. <script>
  1023. $(document).ready(function(){
  1024. $.ajax({
  1025. url: "/ajax/getip.asp",
  1026. type: "GET",
  1027. complete: function () {
  1028. return true;
  1029. },
  1030. error: function () {
  1031. return false;
  1032. }
  1033. });
  1034. });
  1035. </script>
  1036.  
  1037. <script>
  1038. $(document).ready(function(){
  1039. $("a").each(function() {
  1040. var href = $(this).attr('href');
  1041. var dataNewTab = $(this).attr('data-newTab');
  1042. var domain = "https://www.ctgoodjobs.hk";
  1043. var netDomain = "https://www2.ctgoodjobs.hk";
  1044. var resDomain = "https://resources.ctgoodjobs.hk";
  1045. var jobDomain = "https://jobs.ctgoodjobs.hk";
  1046. if(href!="" && href!=null)
  1047. {
  1048. if(href.substring(0,1)!="/" && href.substring(0,1)!="?" && href.substring(0,1)!="#" && href.indexOf(domain)<0 && href.indexOf("javascript")<0 && href.indexOf(netDomain)<0 && href.indexOf("mailto")<0 && dataNewTab!="F" && href.indexOf(resDomain)<0 && href.indexOf(jobDomain)<0)
  1049. {
  1050. $(this).attr("target","_blank");
  1051. }
  1052. }
  1053. })
  1054. });
  1055. </script>
  1056. <script async defer crossorigin="anonymous" src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v14.0&appId=506148546154053&autoLogAppEvents=1" nonce="8w4ygkQo"></script>
  1057.  
  1058. <script src="https://res01.ctgoodjobs.hk/js/general/ctgoodjobs.combine.min.20230511.v1.js"></script>
  1059.  
  1060. <script src="https://res01.ctgoodjobs.hk/js/general/jquery-ui.min.20200208.v1.js"></script>
  1061. <script src="/js/general/jquery.ui.touch-punch.min.js"></script>
  1062. <script src="/js/general/jquery.mCustomScrollbar.concat.min.js"></script>
  1063. <script src="/js/general/swiper-bundle.min.js"></script>
  1064. <script src="/js/jquery/ui/jquery.ui.autocomplete.html.js"></script>
  1065. <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
  1066. <script src="/js/ctjob/detail/jquery.easypiechart.min.js"></script>
  1067. <script src="/js/ctjob/detail/tippy.all.min.js"></script>
  1068.  
  1069. <script src="/js/ctjob/listing/stickyfill.min.js"></script>
  1070. <script src="https://res01.ctgoodjobs.hk/js/ctjob/listing/ctgoodjobs.joblisting.min.20240410.v1.js"></script>
  1071.  
  1072. <script src="/js/language/UI/homepage.js?_v220317"></script>
  1073. <script src="/js/language/UI/jobdetail.js?_v230804"></script>
  1074.  
  1075.  
  1076. <script id="tmpl-sub-ja-div" type="text/html">
  1077. <div id="ja-sub-w" data-msg-err-email="Please enter a valid email address." data-msg-err-email-empty="Please provide an email address." data-msg-err-pw="The password should contain 8-20 characters with uppercase, lowercase and number." data-msg-err-pw-empty="Please enter password." class="jobalert clearfix"></div>
  1078. </script>
  1079. <script id="tmpl-sub-ja-btn" type="text/html">
  1080. <a id="ja-sub-box-toggle" href="javascript:void(0)" class="jobalert-float-btn"><img src="/images/ctjob/listing/jobalert.png"></a>
  1081. </script>
  1082.  
  1083. <script id="tmpl-sub-ja-div-case-1a" type="text/html">
  1084. <div class="case-1 main" data-template="1a">
  1085. <div class="title">
  1086. <span>Create job alert for this search.</span>
  1087. <img src="/images/ctjob/listing/jobalert.png">
  1088. <a href="javascript:void(0)" class="btn btn-def subscribe-jobalert"><span class="btn-txt">Subscribe</span></a>
  1089. <a href="javascript:void(0)" class="close-popup"><i class="fa fa-times" aria-hidden="true"></i></a>
  1090. </div>
  1091. </div>
  1092. </script>
  1093. <script id="tmpl-sub-ja-div-case-1b" type="text/html">
  1094. <div  id="jobalert_form_new"  class="case-1 main" data-template="1b">
  1095. <div class="title clearfix">
  1096. <span>Create job alert for this search.</span>
  1097. <img src="/images/ctjob/listing/jobalert.png">
  1098. <a href="javascript:void(0)" class="close-popup"><i class="fa fa-times" aria-hidden="true"></i></a>
  1099. </div>
  1100. <div class="content">
  1101. <div class="form-group">
  1102. <div class="form-item">
  1103. <div class="input-field no-icon">
  1104. <input type="text" name="jobalert_email" class="form-control" id="jobalert-email" placeholder="Email address">
  1105. </div>
  1106. </div>
  1107.  
  1108. </div>
  1109. <a href="javascript:void(0)" class="btn btn-def create-jobalert"><span class="btn-txt">Create Alert</span></a>
  1110. </div>
  1111. </div>
  1112. </script>
  1113. <script id="tmpl-sub-ja-div-case-1c" type="text/html">
  1114. <div class="case-1 main" data-template="1c">
  1115. <div class="title">
  1116. <span>You have logged in already. Create job alert for this search</span>
  1117. <img src="/images/ctjob/listing/jobalert.png">
  1118. <a href="javascript:void(0)" class="btn btn-def subscribe-jobalert"><span class="btn-txt">Subscribe</span></a>
  1119. <a href="javascript:void(0)" class="close-popup"><i class="fa fa-times" aria-hidden="true"></i></a>
  1120. </div>
  1121. </div>
  1122. </script>
  1123.  
  1124. <script id="tmpl-sub-ja-div-case-2" type="text/html">
  1125. <div class="case-2 main" data-template="2">
  1126. <div class="title">
  1127. <span>Welcome back!<br/>Please login to your account.</span>
  1128. <img src="/images/ctjob/listing/jobalert.png">
  1129. <a href="javascript:void(0)" class="close-popup"><i class="fa fa-times" aria-hidden="true"></i></a>
  1130. </div>
  1131. <div class="content">
  1132. <div class="form-group">
  1133. <div class="form-item">
  1134. <div class="input-field no-icon">
  1135. <input type="password" class="form-control" id="jobalert-login-pw" placeholder="Password">
  1136. </div>
  1137. </div>
  1138. </div>
  1139. <a href="javascript:void(0)" class="forgot-pw">Forgot password?</a>
  1140. <a href="javascript:void(0)" class="btn btn-def login-btn"><span class="btn-txt">Login</span></a>
  1141. </div>
  1142. </div>
  1143. </script>
  1144. <script id="tmpl-sub-ja-div-case-3" type="text/html">
  1145. <div class="case-3 main" data-template="3">
  1146. <div class="title">
  1147. <span>Welcome to CTgoodjobs!<br>Please fill in password to create account.</span>
  1148. <img src="/images/ctjob/listing/jobalert.png">
  1149. <a href="javascript:void(0)" class="close-popup"><i class="fa fa-times" aria-hidden="true"></i></a>
  1150. </div>
  1151. <div class="content">
  1152. <div class="form-group">
  1153. <div class="form-item">
  1154. <div class="input-field no-icon">
  1155. <input type="password" class="form-control" id="jobalert-login-pw" placeholder="Password">
  1156. </div>
  1157. </div>
  1158. </div>
  1159. <a href="javascript:void(0)" class="btn btn-def create-account"><span class="btn-txt">Create Account</span></a>
  1160. <div class="desc">By clicking Create Account, you agree to accept CTgoodjobs' <a href="/privacy-policy#privacy-policy" target="_blank">privacy policy</a> and <a href="/english/terms/terms.asp" target="_blank">terms & conditions</a>.</div>
  1161. </div>
  1162. </div>
  1163. </script>
  1164. <script id="tmpl-sub-ja-div-case-4" type="text/html">
  1165. <div class="case-4" data-template="4">
  1166. <div class="title">
  1167. <span>Your alert is created successfully.</span>
  1168. <i class="fa fa-check" aria-hidden="true"></i>
  1169. </div>
  1170. <div class="content">
  1171. <p>Your account is created with job alert now! You may update your profile for better job searching experience.</p>
  1172. <div class="action">
  1173. <a href="/account/profile/" target="_blank" class="btn btn-def update-profile"><span class="btn-txt">Update your profile</span></a>
  1174. <a href="javascript:void(0)" class="btn btn-cancel not-now"><span class="btn-txt">Maybe later</span></a>
  1175. </div>
  1176. </div>
  1177. </div>
  1178. </script>
  1179. <script id="tmpl-sub-ja-div-case-5" type="text/html">
  1180. <div class="case-5" data-template="5">
  1181. <div class="title">
  1182. <span>Reset your password</span>
  1183. <i class="fa fa-info-circle" aria-hidden="true"></i>
  1184. </div>
  1185. <div class="content">
  1186. <p>Instructions will be sent to your email shortly.<br/>For enquiries, please reach us 2156 2626 or <a href="mailto:info@CTgoodjobs.hk">info@CTgoodjobs.hk</a>.</p>
  1187. <a href="javascript:void(0)" class="btn btn-def login-btn"><span class="btn-txt">Continue with login</span></a>
  1188. </div>
  1189. </div>
  1190. </script>
  1191. <script id="tmpl-sub-ja-div-case-6" type="text/html">
  1192. <div class="case-6" data-template="6">
  1193. <div class="title">
  1194. <span>Your alert is created successfully.</span>
  1195. <i class="fa fa-check" aria-hidden="true"></i>
  1196. </div>
  1197. <div class="content">
  1198. <p>Your account is created with job alert now! Provide your job function for better job searching experience.</p>
  1199. <div class="criteria job-func">
  1200. <div class="criteria-w">
  1201. <div class="act-field">
  1202. <div class="icon"><i class="fa fa-briefcase" aria-hidden="true"></i></div>
  1203. <span class="field-txt trunc" data-msg-default="Select job function (Max. 5)">Select job function (Max. 5)</span>
  1204. <i class="fa fa-angle-down" aria-hidden="true"></i>
  1205. <a class="clear-btn" href="javascript:void(0)"><i class="fa fa-times" aria-hidden="true"></i></a>
  1206. </div>
  1207. </div>
  1208. </div>
  1209. <a href="javascript:void(0)" class="btn btn-def save-btn"><span class="btn-txt">Save</span></a>
  1210. </div>
  1211. </div>
  1212. </script>
  1213. <script id="tmpl-sub-ja-div-case-7" type="text/html">
  1214. <div class="case-7" data-template="7">
  1215. <div class="title">
  1216. <span>Thank you for your time!</span>
  1217. <i class="fa fa-check" aria-hidden="true"></i>
  1218. </div>
  1219. <div class="content">
  1220. <p>Now, you can update your profile and get prepared for your next job!</p>
  1221. <div class="action">
  1222. <a href="/account/profile/" target="_blank" class="btn btn-def update-profile"><span class="btn-txt">Update your profile</span></a>
  1223. <a href="javascript:void(0)" class="btn btn-cancel not-now"><span class="btn-txt">Maybe later</span></a>
  1224. </div>
  1225. </div>
  1226. </div>
  1227. </script>
  1228. <script id="tmpl-sub-ja-div-case-8" type="text/html">
  1229. <div class="case-8" data-template="8">
  1230. <div class="title">
  1231. <span>Alert created. We’ll send matching jobs to ##email##</span>
  1232. <i class="fa fa-check" aria-hidden="true"></i>
  1233. </div>
  1234. </div>
  1235. </script>
  1236. <script id="tmpl-sub-ja-div-case-error" type="text/html">
  1237. <div class="case-error" data-template=error">
  1238. <div class="title">
  1239. <span>There is some problem. Please try again later.</span>
  1240. </div>
  1241. </div>
  1242. </script>
  1243. <script id="tmpl-sub-ja-div-modal-replace-base" type="text/html">
  1244. <div id="modal-replace-jobalert" class="modal modal-action fade" role="dialog" data-lang="e" data-txt-more="more" data-txt-status-daily="Daliy email" data-txt-status-weekly="Weekly email" data-txt-cri-keyword="Keyword" data-txt-cri-search-by-j="Job Title" data-txt-cri-search-by-c="Company" data-txt-cri-jobfunc="Job Function" data-txt-cri-empType="Employment Term" data-txt-cri-industry="Job Industry" data-txt-cri-salary="Expected Salary" data-txt-cri-experience="Work Experience" data-txt-cri-education="Education Level" data-txt-cri-grade="Career level">
  1245. <div class="v-align">
  1246. <div class="modal-dialog v-align-center">
  1247. <!-- Modal content-->
  1248. <div class="modal-content">
  1249. <div class="modal-body">
  1250. <div class="close-modal" data-dismiss="modal"><div class="lr"><div class="rl"></div></div></div>
  1251. <h3><i class="fa fa-exclamation-triangle" aria-hidden="true"></i> You’ve reached the maximum no. of job alerts.</h3>
  1252. <p>You may replace one of the following job alerts.</p>
  1253. <div class="job-alert">
  1254. <div class="listing">
  1255. </div>
  1256. </div>
  1257. </div>
  1258. <div class="modal-footer">
  1259. <a href="javascript:void(0)" class="btn btn-default submit-btn replace-jobalert-btn" data-dismiss="modal">Replace</a>
  1260. <a href="javascript:void(0)" class="btn btn-default btn-cancel" data-dismiss="modal">Cancel</a>
  1261. </div>
  1262. </div>
  1263. </div>
  1264. </div>
  1265. </div>
  1266. </script>
  1267. <script id="tmpl-sub-ja-div-modal-replace-item" type="text/html">
  1268. <div class="item" data-ja-id="##ja_id##">
  1269. <div class="sec-title">
  1270. <div class="cb">
  1271. <input id="cb-ja-rec-##num##" class="radio-cus" name="jobalert" type="radio" value="##ja_id##">
  1272. <label for="cb-ja-rec-##num##" class="radio-cus-label">
  1273. ##ja_name##
  1274. <span class="mail-status">##mail_status##</span>
  1275. </label>
  1276. </div>
  1277. </div>
  1278. <div class="sec-content">
  1279. <div id="job-alert-##num##" class="content ja-rec">
  1280. <a class="view-all" href="javascript:void(0);" data-txt-show="View all criteria" data-txt-hide="Hide"><span class="btn-txt">View all criteria</span> <i class="fa fa-angle-down"></i></a>
  1281. </div>
  1282. <div class="date">
  1283. Last updated on ##date####disp_date##
  1284. </div>
  1285. </div>
  1286. </div>
  1287. </script>
  1288. <script id="tmpl-sub-ja-div-modal-replace-item-criteria" type="text/html">
  1289. <div class="col-sm-6 criteria">
  1290. <div class="row">
  1291. <div class="col-sm-4 header">##title##</div>
  1292. <div class="col-sm-8 detail">
  1293. <span class="hl">##content##</span><span class="more">##more##</span>
  1294. </div>
  1295. </div>
  1296. </div>
  1297. </script>
  1298.  
  1299. <script type="text/javascript" src="/js/ctjob/listing/subscribe.js?_v240126"></script>
  1300.  
  1301.  
  1302. <script>
  1303. google.charts.load("current", { packages:["corechart"]});
  1304. if ($('#hidden_isdirectapply').length > 0)
  1305. if (($.cookie("isdirectapply") == 'Y') && (!($('#hidden_isdirectapply').val() == 'Y')))
  1306. {
  1307. eraseCookie("isdirectapply");
  1308. createCookie("isdirectapply", '', 0);
  1309. }
  1310. else if (($('#hidden_isdirectapply').val() == 'Y') && (!($.cookie("isdirectapply") == 'Y')))
  1311. {
  1312. eraseCookie("isdirectapply");
  1313. createCookie("isdirectapply", 'Y', 0);
  1314. }
  1315. </script>
  1316.  
  1317.  
  1318. <script>
  1319. $(function() {
  1320. $(document).on('click', 'a.mock-interview-questions-btn', function () {
  1321. var job_id = $(this).attr("href").split('/').pop();
  1322. insertActionLogAjax('click','joblist','interview-questions-link',job_id);
  1323. });
  1324. $(document).on('click', 'div.toastify-w-ad span.toast-close', function () {
  1325. var job_id = $("a.mock-interview-questions-btn").attr("href").split('/').pop();
  1326. insertActionLogAjax('click','joblist','interview-questions-close',job_id);
  1327. });
  1328. insertActionLogAjax("impression", "joblist", "recommended_jobs", "");
  1329. insertActionLogAjax("open", "joblist", "trending_jobs", "");
  1330. $(".trending-jobs").show();
  1331. /* Tag Swiper */
  1332. var tag_swiper = new Swiper(".tag-swiper", {
  1333. slidesPerView: "auto",
  1334. spaceBetween: 6,
  1335. breakpoints: {
  1336. 992: {
  1337. spaceBetween: 8,
  1338. }
  1339. }
  1340. });
  1341. getJobListWithAjax('/ajax/account/recommended-jobs/ajax.asp', 'POST', 'home-recommended-non-member', $(".recommended-jobs .job-swiper"));
  1342. $(".recommended-jobs").on("click", ".save-job", function() {
  1343. selectSaveJobRJ(this);
  1344. return false;
  1345. });
  1346. function selectSaveJobRJ(my_element) {
  1347. //var job_id = $(my_element).siblings("input[name=job_id]").val().substring(0, 8);
  1348. //var action;
  1349. //alert login
  1350. var msg = Setting.Language.getKeyword("lang_ui_jobdetail_save_job_after_login_msg","ui_jobdetail");
  1351. Snackbar.show({
  1352. text: msg,
  1353. customClass: "snackbar-cus",
  1354. pos: "bottom-center",
  1355. duration: 2000,
  1356. showAction: false
  1357. });
  1358. }
  1359. });
  1360. function getJobListWithAjax(url, type, action, $target) {
  1361. $.ajax({
  1362. url: url,
  1363. type: type,
  1364. data: {
  1365. action: action
  1366. },
  1367. contentType: "application/x-www-form-urlencoded;charset=utf-8",
  1368. success: function(data) {
  1369. var jobJSON = {};
  1370. if(data){
  1371. jobJSON = $.parseJSON(data.replace(/\\([^'"\\])/g, "$1").replace(/\s+/g, " "))
  1372. }
  1373. appendJobsByJson(jobJSON, $target, action);
  1374. if (action=="home-recommended-non-member") {
  1375. $("#recommended-more").attr("href", "/ctjob/listing/joblist.asp?job_id=" + jobJSON.rjLink) ;
  1376. $("#recommended-more-icon").attr("href", "/ctjob/listing/joblist.asp?job_id=" + jobJSON.rjLink) ;
  1377. }
  1378. }
  1379. });
  1380. }
  1381. function appendJobsByJson(jobJSON, $wrapper, iac) {
  1382. var jobCount = 0;
  1383. $.each(jobJSON.object, function(i, e) {
  1384. if (iac == 'home-recommended') {
  1385. $.ajax({
  1386. url: '/ajax/ctjob/listing/skimming-job.asp',
  1387. type: 'GET',
  1388. data: {
  1389. job_id: e.job_id,
  1390. joblistmode: 'H'
  1391. },
  1392. async: true,
  1393. cache: false,
  1394. success: function (response) {}
  1395. });
  1396. }
  1397. var jobUrl = '/job/'+(e.jobtitle_for_url||'a')+'/'+e.job_id;
  1398. var compLogo;
  1399. if(e.company_logo_url != "")
  1400. var compLogo = '<img src="/images/company_profile/'+e.company_logo_url+'" class="comp-logo">';
  1401. else
  1402. var compLogo = '<img src="/images/company_profile/company-dummy.png" class="comp-logo">';
  1403. var postDate = e.the_date;
  1404. if(postDate.indexOf("/")>0) {
  1405. var tmp = e.the_date.split("/");
  1406. postDate = "20"+tmp[2]+"-"+tmp[1]+"-"+tmp[0];
  1407. }
  1408. var saveJobBtn;
  1409. if(iac=="home-recommended-non-member"){
  1410. saveJobBtn = '<a class="save-job iconBtn btn--save" data-job-id="'+e.job_id+'"><i class="far fa-star"></i></a>';
  1411. }
  1412. else{
  1413. if (jobJSON.saved.some(function(id){ return id == e.job_id })){
  1414. saveJobBtn = '<a class="save-job iconBtn btn--save btn--saved" data-job-id="'+e.job_id+'"><i class="far fa-star fas"></i></a>';
  1415. }else{
  1416. saveJobBtn = '<a class="save-job iconBtn btn--save" data-job-id="'+e.job_id+'"><i class="far fa-star"></i></a>';
  1417. }
  1418. }
  1419. if ((iac=="home-recommended") || (iac=="home-recommended-non-member")){
  1420. var oJob = $("<div/>").addClass("swiper-slide").attr("data-job-id", e.job_id).attr("data-comp-id", e.company_id);
  1421. oJob.append(
  1422. '<div class="job">'
  1423. +'<div class="job__logo">'+compLogo+'</div>'
  1424. +'<div class="job__company line-clamp">'+e.company_name+'</div>'
  1425. +'<div class="job__title line-clamp-2">'+e.jobtitle+'</div>'
  1426. +'<div class="job__postdate">'+Setting.Language.getKeyword("lang_ui_jobdetail_postdate_on","ui_jobdetail")+postDate+'</div>'
  1427. +saveJobBtn
  1428. +' <a href="'+jobUrl+'" class="a-overlay">'+'</a>'
  1429. );
  1430. //---------------------------
  1431. // Revemp Bak
  1432. /* var oJob = $("<div/>").addClass("swiper-slide").addClass("job").attr("data-job-id", e.job_id).attr("data-comp-id", e.company_id);
  1433. oJob.append(' <a href="'+jobUrl+'" class="job">'
  1434. +'<div class="job__logo">'+compLogo+'</div>'
  1435. +'<div class="job__company line-clamp">'+e.company_name+'</div>'
  1436. +'<div class="job__title line-clamp-2">'+e.jobtitle+'</div>'
  1437. +'<div class="job__postdate">'+Setting.Language.getKeyword("lang_ui_jobdetail_postdate_on","ui_jobdetail")+postDate+'</div>'
  1438. +saveJobBtn
  1439. +'</a>'
  1440. ); */
  1441. //---------------------------
  1442. $wrapper.find(".swiper-wrapper").append(oJob);
  1443. }
  1444.  
  1445. jobCount++;
  1446. if (iac=="home-recommended" && jobCount>=15) {
  1447. return false;
  1448. }
  1449. });
  1450. $('.recommended-jobs img.ajax-loader').remove();
  1451. if (jobCount>0) {
  1452. if ((iac=="home-recommended") || (iac=="home-recommended-non-member"))  {
  1453. var oMore = '<div class="swiper-slide slide--more" style="width:100px;"><span class="iconify" data-icon="bi:arrow-right-circle-fill"></span>'+Setting.Language.getKeyword("lang_ui_homepage_view_more","ui_homepage")+'<a id="recommended-more-icon" href="'+$('#recommended-more').prop('href')+'" class="a-overlay"></a></div>';
  1454. $wrapper.find(".swiper-wrapper").append(oMore);
  1455. /* Recommended Jobs Swiper */
  1456. /*
  1457. var swiper = new Swiper(".job-swiper", {
  1458. slidesPerView: 1.2,
  1459. spaceBetween: 20,
  1460. navigation: {
  1461.  nextEl: ".job-swiper__button-next",
  1462.  prevEl: ".job-swiper__button-prev"
  1463. },
  1464. breakpoints: {
  1465.  480: {
  1466. slidesPerView: 2.2
  1467.  },
  1468.  992: {
  1469. slidesPerView: 2.2
  1470.  },
  1471.  1200: {
  1472. slidesPerView: 3.2
  1473.  }
  1474. }
  1475. });
  1476. */
  1477. /* Jobs Swiper */
  1478. var swiper = new Swiper(".job-swiper", {
  1479. slidesPerView: "auto",
  1480. spaceBetween: 15,
  1481. navigation: {
  1482.  nextEl: ".swiper__button-next",
  1483.  prevEl: ".swiper__button-prev",
  1484. },
  1485. });
  1486. /* Recommended Jobs - Title */
  1487. $('.job-swiper .job__title').each(function(index, element) {
  1488. $clamp(element, {clamp: 2});
  1489. });
  1490. if (jobCount==1) $('#recommended-more').remove();
  1491. $(".recommended-jobs").find(".hidden").removeClass("hidden");
  1492. }
  1493. } else {
  1494. $('.recommended-jobs').remove();
  1495. }
  1496. }
  1497. </script>
  1498. </body>
  1499. </html>
  1500.  
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda