1 2 3<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 4<html xmlns="http://www.w3.org/1999/xhtml"> 5<head> 6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 7 <title>Contact Us - Empowering innovators to turn ideas into reality - 3PCB</title> 8 <link rel="stylesheet" href="/img/css-lib-www/client-public.css?v=1.176956222222743472026051299" /> 9 <link rel="stylesheet" href="/img/css-lib-www/contact-us.css?v=1.176956222222743472026051299" /> 10
10<script src="img/js/jquery-1.11.3.js"></script>
10 11
11<script src="img/js/layer-v3.1.1/layer/layer.js"></script>
vendor: 182 bytes, lines 11-17
11 12 13 14 <script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit&hl=en" 15 async=async defer=defer> 16 </script> 17
17<script type="text/javascript"> 18 var onloadCallback = function () { 19 grecaptcha.render('html_element', { 20 'sitekey': '6LdQMy4sAAAAADM52UkAtozxVzZVgqk3iQygdsSF' 21 }); 22 }; 23 </script>
23 24 25 26 27
27<script type="text/javascript"> 28 function CallByCheckLoginAfter(obj) { 29 if (obj.data == 1) { 30 $("#amailto").html(obj.adminEmail).attr('href', "mailTo:" + obj.adminEmail); 31 $("#dvloginok").show(); 32 33 } 34 else { 35 $("#dvUnlogin").show(); 36 } 37 } 38 39 </script>
39 40</head> 41 42<body> 43 <!--头é¨--> 44 45 46<link rel="stylesheet" href="/img/css-lib-www/client-public.css?v=1.176956222222743472026051299"> 47
48<script> 49 function setCookie(name, value, Days) { 50 51 var exp = new Date(); 52 exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000); 53 document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString() + ";path=/"; 54 } 55</script>
55 56<div class="the-header" id="headerdvtemp"> 57 <div class="wcontainer"> 58 <div class="hm-left"> 59 <a class="logo" href="/" title="Custom 3PCB Prototype Manufacturer">3PCB</a> 60 61 <ul class="menus-nav"> 62 <!-- éä¸ç»æ active--> 63 64 65 66 67 68 <li > 69 <a class="menu-el" href="/capabilities.html">Capabilities</a> 70 </li> 71 <li > 72 <a class="menu-el" href="/pcb-assembly.html">PCB Assembly</a> 73 </li> 74 <li > 75 <a class="menu-el" href="/about.html">Company</a> 76 </li> 77 78 </ul> 79 80 </div> 81 <div class="hm-right"> 82 <a class="jump-order" href="/orderonline.aspx">Order Now</a> 83 <a class="to-cart" href="https://member.3pcb.com/order/cartlist"> 84 <span class="count">0</span> 85 </a> 86 87 <div class="sign-register js-sign-register"> 88 <div class="state-account js-toggle-account"> 89 <!-- æªç»å½--> 90 <a class="btn sign-btn" href="/Member/Login/">Sign in</a> 91 <!--å·²ç»å½--> 92 <div class="signed-info"> 93 <span class="name">My 3PCB</span> 94 </div> 95 </div> 96 <div class="user-account-main"> 97 <!--æªç»å½ä¸--> 98 <div class="no-login-area"> 99 <a href="/Member/Login/" class="btn sign-btn">Sign in</a> 100 <p class="visitors">New Customer? <a href="/Member/Login/">Join Free</a></p> 101 </div> 102 <!-- å¾ ä»æ¬¾-ç»å½åæ¾ç¤º--> 103 <div class="remind-list"> 104 <a rel="nofollow" href="https://member.3pcb.com/order/OrderList"> 105 <b>(0)</b>Items in Awaiting payment Cart! 106 </a> 107 </div> 108 <!-- è·³è½¬é¾æ¥--> 109 <ul class="quick-entry"> 110 <li> 111 <a href="https://member.3pcb.com" rel="nofollow"> 112 <span class="fly-icon client"></span>My 3PCB 113 </a> 114 </li> 115 <li> 116 <a href="https://member.3pcb.com/order/OrderList" rel="nofollow"><span class="fly-icon order"></span>My Orders</a> 117 </li> 118 <li> 119 <a href="https://member.3pcb.com/order/orderlist?type=1" rel="nofollow"><span class="fly-icon file"></span>Production Status</a> 120 </li> 121 <li> 122 <a href="https://member.3pcb.com/Message/Message" rel="nofollow"><span class="fly-icon message"></span>Message Center</a> 123 </li> 124 <li> 125 <a href="https://member.3pcb.com/address/addoredit" rel="nofollow"><span class="fly-icon map"></span>Delivery Address</a> 126 </li> 127 </ul> 128 <!-- éåº--> 129 <div class="user-signout"> 130 <a class="sign-out" href="javascript:signout();"> 131 <i class="out"></i>Sign Out 132 </a> 133 </div> 134 </div> 135 <!-- çç¹æç¤º--> 136 <div class="ui-newuser-coupon-tips" style="display:none;"> 137 <a href="/Member/Login/"> 138 New here? Get a <span class="cou-num">$5.00</span> Coupon! 139 </a> 140 </div> 141 <input hidden id="tips" value="13"> 142 </div> 143 144 </div> 145 </div> 146</div> 147 148
149<script type="text/javascript"> 150 $(document).ready(function () { 151 $(".btn.sign-btn").hide(); 152 $(".signed-info").hide();// 153 if ($("#tips").val() == "1") { 154 $(".ui-newuser-coupon-tips").show(); 155 } 156 else { 157 $(".ui-newuser-coupon-tips").hide(); 158 } 159 // ç»éæªç»éçé¢è®¾ç½® 160 jsonplogininfo(); 161 162 }); 163 164 function jsonplogininfo() { 165 // ç»éæªç»éçé¢è®¾ç½® 166 $.ajax({ 167 url: "https://login.3pcb.com/GetSessionP.aspx?callback=?", 168 dataType: "jsonp", 169 jsonpCallback: "jasonpCallback", 170 success: function (jason) { 171 172 if (jason.data == 0) { 173 var getBroswerAbc = getBroswer(); 174 //console.log(abc); 175 176 if (getBroswerAbc && getBroswerAbc.broswer == "Firefox" && parseFloat(getBroswerAbc.version.split('.')[0]) > 102 177 && "https://www.3pcb.com".indexOf("3pcb.com") == -1) { 178 179 if (1==2 && $.cookie('hidiframemember') != "1" && window && window.location && window.location.href && window.location.href.indexOf("Member/Login/") == -1) { 180 $("#headerdvtemp").append('<iframe style="display:none;" src="/home/iframeview" id="hidiframemember"></iframe>'); 181 182 $.cookie('hidiframemember', '1'); 183 184 setTimeout(function () { 185 $.ajax({
186 url: "https://member.3pcb.com/Project/ResultDataLoinGet?callback=?", 187 dataType: "jsonp", 188 jsonpCallback: "jasonpCallback", 189 success: function (jasonmember) { 190 callbacklogininfo(jasonmember) 191 192 }, 193 error: function (xhr, status, error) { 194 //debugger; 195 } 196 }); 197 }, 3000); 198 199 } 200 else { 201 202 $.ajax({ 203 url: "https://member.3pcb.com/Project/ResultDataLoinGet?callback=?", 204 dataType: "jsonp", 205 jsonpCallback: "jasonpCallback", 206 success: function (jasonmember) { 207 callbacklogininfo(jasonmember) 208 209 }, 210 error: function (xhr, status, error) { 211 //debugger; 212 } 213 }); 214 215 } 216 217 218 219 220 221 } 222 else { 223 callbacklogininfo(jason); 224 } 225 } 226 else { 227 callbacklogininfo(jason); 228 } 229 230 231 232 }, 233 error: function (xhr, status, error) { 234 //debugger; 235 } 236 }); 237 238 } 239 240 function callbacklogininfo(jason) { 241 if (jason.data == 1) { 242 243 //å·²ç»é 244 $("#headerdvtemp").append('<iframe style="display:none;" src="https://member.3pcb.com/SetCookie.aspx?returl=https://member.3pcb.com&sid=' + jason.sid + '" id="hidiframe"></iframe>'); 245 $(".btn.sign-btn").hide(); 246 $(".user-signout").show();// 247 $(".signed-info").show();// 248 $(".no-login-area").hide(); 249 $(".ui-newuser-coupon-tips").hide(); 250 251/* $("#login-stat-signed").find("b").text(jason.contactName);*/ 252 253 $(".remind-list").find("b").text("(" + jason.awitingCount + ")"); 254 $(".count").text(jason.cartCount); 255 setCookie2('logFlag', jason.data, 3600 * 1000); 256 257 $("#logFlag").val(jason.data); 258 $("#hiduserNo").val(jason.userNo); 259 260 //pcb计价 261 262 //é项夿 263 if ($(".clsPlatingType.active").attr("data") == "HASL with lead" || $(".clsPlatingType.active").attr("data") == "HASL lead free") { 264 $(".custom-weight-show").show(); 265 } else { 266 $(".custom-weight-show").hide(); 267 } 268 269 if ($("#txthiduserid")) { 270 $("#txthiduserid").val(jason.id); 271 } 272 273 274 if (jason.IsNotAddToBoard == "True") { 275 if ($(".clsRemoveProNo").length > 0) { 276 $(".clsRemoveProNo").removeClass("active"); 277 $(".clsRemoveProNo[data='Yes']").addClass("active"); 278 $("input[name='radRemoveProNo']").val('Yes'); 279 } 280 } 281 //ç»éé®ç®±ä¸æ¾ç¤º 282 $(".unlogin-email").hide(); 283 //Topæ¾ç¤ºå·²ç»é 284 $(".account-unsigned").hide(); 285 $("#login-stat-signed").show(); 286 $('#isshownewhere').hide(); 287 //é¢ç½è®¡ä»· 288 $("#StencilSelPcb").show(); 289 //è´´ç计价 290 $("#dvSMTPCBRelation").show(); 291 //PONumberæ¾ç¤º 292 $("#divPONumber").show(); 293 //PONumber䏿¾ç¤º 294 $("#divSmtPONumber").show(); 295 //PONumber䏿¾ç¤º 296 $("#divStencilPONumber").show(); 297 //PONumber䏿¾ç¤º 298 $("#divFlexiblePONumber").show(); 299 //ç»éé®ç®±ä¸æ¾ç¤º 300 $(".unlogin-email").hide(); 301 //Topæ¾ç¤ºå·²ç»é 302 $(".account-unsigned").hide(); 303 $("#login-stat-signed").show(); 304 305 if ('13' == 2) { // pcb计价页 306 //æ¾ç¤ºmemberå¯¼èªæ¡ 307 $("#memberNavigation").show(); 308 $("#wwwNavigation").hide(); 309 } 310 //æ¾ç¤ºä¸å¡åé®ç®± 311 $("#adminEmail").html(jason.adminEmail).attr('href', "mailTo:" + jason.adminEmail); 312 $('.js-admin-email').html(jason.adminEmail).attr('href', "https://member.3pcb.com/Message/MessageDetail").attr('target', '_blank'); 313 $(".js-admin-email2").attr('href', "mailTo:" + jason.adminEmail); 314 $("#JsAdminEmail").val(jason.adminEmail); 315 // GetRestCount(); 316 317 $('#isshownewhere').hide(); 318 if (getCookie("isshownewhere") != "1") {
319 setCookie2("isshownewhere", "1", 1); 320 } 321 322 if (typeof CallByCheckLoginSuccess === "function") { 323 CallByCheckLoginSuccess(jason.sid, jason.id); 324 } 325 if (typeof CallByCheckLoginBottomSuccess === "function") { 326 327 328 if (jason.adminname) { 329 CallByCheckLoginBottomSuccess(jason.userNo + "(sale-rep:" + jason.adminname + ")"); 330 } 331 else { 332 CallByCheckLoginBottomSuccess(jason.userNo); 333 } 334 335 } 336 337 } 338 else { 339 //æªç»é 340 $(".btn.sign-btn").css({display:'flex'}); 341 $(".user-signout").hide();// 342 $(".signed-info").hide();// 343 $(".cart-number").text("0"); 344 $("#Email").parent().addClass('scale') 345 //cookie[logFlag]ï¼åå ¥0 346 setCookie2('logFlag', '0', 3600 * 1000); 347 $("#logFlag").val('0'); 348 //pcb计价 349 $(".custom-weight-show").hide(); 350 //é¢ç½è®¡ä»· 351 $("#StencilSelPcb").hide(); 352 //è´´ç计价 353 $("#dvSMTPCBRelation").hide(); 354 //PONumber䏿¾ç¤º 355 $("#divPONumber").hide(); 356 //PONumber䏿¾ç¤º 357 $("#divSmtPONumber").hide(); 358 //PONumber䏿¾ç¤º 359 $("#divStencilPONumber").hide(); 360 //PONumber䏿¾ç¤º 361 $("#divFlexiblePONumber").hide(); 362 //ç»éé®ç®±æ¾ç¤º 363 //$(".unlogin-email").show(); 364 //Topæ¾ç¤ºæªç»é 365 $(".account-unsigned").show(); 366 367 if (getCookie("isshownewhere") != "1") { 368 $('#isshownewhere').show(); 369 } 370 371 } 372 } 373 374 //sign out 375 function signout() { 376 var getBroswerAbc = getBroswer(); 377 //console.log(abc); 378 379 if (getBroswerAbc && getBroswerAbc.broswer == "Firefox" && parseFloat(getBroswerAbc.version.split('.')[0]) > 102 380 && "https://www.3pcb.com".indexOf("3pcb.com") == -1) { 381 location.href = "https://member.3pcb.com/Home/Exit/"; 382 } 383 else { 384 $.ajax({
385 url: "https://login.3pcb.com/RemoveSessionP.aspx?callback=?", 386 dataType: "jsonp", 387 jsonpCallback: "jasonpCallback", 388 success: function (jason) { 389 top.location.href = "https://www.3pcb.com"; 390 }, 391 error: function (xhr, status, error) { 392 //debugger; 393 } 394 }); 395 } 396 } 397 398 function getBroswer() { 399 try { 400 var Sys = {}; 401 var ua = navigator.userAgent.toLowerCase(); 402 var s; 403 (s = ua.match(/edge\/([\d.]+)/)) ? Sys.edge = s[1] : 404 (s = ua.match(/rv:([\d.]+)\) like gecko/)) ? Sys.ie = s[1] : 405 (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] : 406 (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] : 407 (s = ua.match(/opr\/([\d.]+)/)) ? Sys.opr = s[1] : 408 (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] : 409 (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] : 410 (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0; 411 412 if (Sys.edge) return { broswer: "Edge", version: Sys.edge }; 413 if (Sys.ie) return { broswer: "IE", version: Sys.ie }; 414 if (Sys.firefox) return { broswer: "Firefox", version: Sys.firefox }; 415 if (Sys.opr) return { broswer: "opr", version: Sys.opr }; 416 417 if (Sys.chrome) return { broswer: "Chrome", version: Sys.chrome }; 418 if (Sys.opera) return { broswer: "Opera", version: Sys.opera }; 419 if (Sys.safari) return { broswer: "Safari", version: Sys.safari }; 420 //opr/68.0.3618.165 421 return { broswer: "", version: "0" }; 422 } 423 catch (e) { 424 return { broswer: "", version: "0" }; 425 426 } 427 } 428 429 function closeNotice(obj) { 430 $(obj).parent().parent().hide(); 431 } 432 function setCookie2(name, value, time) { 433 var exp = new Date(); 434 exp.setDate(exp.getDate() + time * 1); 435 document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString() + "; path=/"; 436 } 437 function getCookie(name) { 438 var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)"); 439 if (arr = document.cookie.match(reg)) 440 return unescape(arr[2]); 441 else 442 return ""; 443 } 444</script>
vendor: 2 bytes, line 444
444
445<script> 446 $(function () { 447 // 头é¨ç»å½ 448 $('.js-toggle-account').hover(function () { 449 $(this).parent().addClass('active') 450 }); 451 $('.js-sign-register').mouseleave(function () { 452 453 $('.js-toggle-account').parent().removeClass('active') 454 }) 455 }); 456</script>
456 457 <!--center--content--> 458 <div class="contact-us-page"> 459 <div class="banner-module"> 460 <div class="wcontainer"> 461 <h1 class="banner-title"> 462 We are here to help and answer any questions you may have. 463 </h1> 464 <p class="banner-des"> 465 We don't just produce circuit boards - we support development cycles, reduce production friction, and 466 help our customers bring hardware to market with confidence. 467 </p> 468 </div> 469 </div> 470 <form method="post" action="/Common/SendMessageByContact"> 471 <div class="form-module"> 472 <div class="wcontainer"> 473 <div class="links-view"> 474 <div class="graphic-links"> 475 <div class="graphic-l"> 476 <div class="link-item"> 477 <div class="link-head"> 478 <img class="link-icon" src="/img/images-lib-www/about/telephone-icon.webp" alt="" /> 479 Service hours (GMT+8): 480 </div> 481 <div class="link-wrap"> 482 <div class="phone" style="display: none">+86 755 2391 9769</div> 483 <p class="p-txt"> 484 9am - 6pm, Mon.- 9am - 12pm, Sat. | Closed Sun & Chinese Public Holidays 485 </p> 486 </div> 487 </div> 488 <div class="link-item"> 489 <div class="link-head"> 490 <img class="link-icon" src="/img/images-lib-www/about/headset-icon.webp" alt="" /> 491 Your sales rep. (Any questions support): 492 </div> 493 <div class="link-wrap"> 494 <a class="msg-btn" href="https://member.3pcb.com/Message/MessageDetail">Sending a message.</a> 495 </div> 496 </div> 497 </div> 498 <div class="graphic-r"> 499 <div class="link-item"> 500 <div class="link-head"> 501 <img class="link-icon" src="/img/images-lib-www/about/mail-icon.webp" alt="" /> 502 Emailing service (GMT+8): 503 </div> 504 <div class="link-wrap"> 505 <p class="p-txt"> 506 9am - 11pm, Mon.- Sun. 507 </p> 508 <div class="mail-box"> 509 <div class="mail-el"> 510 Customer Service: <a href="mailto:[email protected]">[email protected]</a> 511 </div> 512 513 </div> 514 </div> 515 </div> 516 </div> 517 </div> 518 </div> 519 <div class="val-remit"> 520 <div class="input-row"> 521 <div class="label-item"> 522 <div class="title">Name</div> 523 <div class="input-val"> 524 <input type="text" placeholder="Enter your name" name="name" id="name" class="fill-text" /> 525 </div> 526 </div> 527 <div class="label-item"> 528 <div class="title">Email</div> 529 <div class="input-val"> 530 <input type="text" placeholder="Enter your email" name="email" id="email" class="fill-text" /> 531 </div> 532 </div> 533 </div> 534 <div class="input-row"> 535 <div class="label-item"> 536 <div class="title">Phone</div> 537 <div class="input-val"> 538 <input type="text" placeholder="Enter your phone" name="tel" id="tel" class="fill-text" /> 539 </div> 540 </div> 541 <div class="label-item"> 542 <div class="title">Company</div> 543 <div class="input-val"> 544 <input type="text" placeholder="Enter your Company" name="company" id="company" class="fill-text" /> 545 </div> 546 </div> 547 </div> 548 <div class="input-row"> 549 <div class="label-item"> 550 <div class="title">Service support type</div> 551 <!--é䏿·»å :active--> 552 <div class="input-val input-select js-input-select"> 553 <input type="text" placeholder="Please select" name="supporttype" id="supporttype" value="" class="fill-text js-fill-text" readonly="" /> 554 <ul class="down-val js-down-val"> 555 <li class="active">PCB Specification</li> 556 <li>SMD-Stencil</li> 557 <li>PCB Assembly</li> 558 <li>My Orders</li> 559 <li>My Account</li> 560 <li>Payment</li> 561 <li>Track your packages</li> 562 <li>Returns & Refunds</li> 563 <li>Other</li> 564 </ul> 565 </div> 566 </div> 567 </div> 568 <div class="input-row"> 569 <div class="label-item"> 570 <div class="title">How can we help?</div> 571 <div class="input-val"> 572 <textarea class="text-des" name="message" id="message" 573 placeholder="Please enter the details of your request. For example: PCB quote, S
573MT quote, delivery lead time, logistics methods, payment terms, etc."></textarea> 574 </div> 575 </div> 576 </div> 577 <div class="form-group text-container"> 578 579 580 <div id="html_element"></div> 581 </div> 582 <div class="sub-btn js-sub-btn"> 583 <button type="submit"> 584 Submit 585 <span class="s-icon"></span> 586 </button> 587 </div> 588 </div> 589 </div> 590 </div> 591 </form> 592 </div> 593 594 <!--footer--> 595 <div class="footer"> 596 597<style type="text/css"> 598 .gerberlist { 599 margin-bottom: 10px; 600 } 601 602 .gerberlist input { 603 border: 1px solid #cccccc; 604 color: #333; 605 float: none; 606 font-family: arial; 607 font-size: 14px; 608 height: 16px; 609 overflow: hidden; 610 padding: 5px; 611 width: 238px; 612 } 613</style> 614<!-- Google Tag Manager -->
615<script>
vendor: 463 bytes, lines 615-623
615 616 (function (w, d, s, l, i) { 617 w[l] = w[l] || []; w[l].push({ 618 'gtm.start': 619 new Date().getTime(), event: 'gtm.js' 620 }); var f = d.getElementsByTagName(s)[0], 621 j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 622 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); 623 })(window, document, 'script', 'dataLayer', '
623GTM-PNR2JJPH
vendor: 5 bytes, line 623
623');
624</script>
624 625<!-- End Google Tag Manager --> 626 627<div class="wcontainer"> 628 <div class="footer-area-box"> 629 <div class="footer-area-l"> 630 <a class="logo-el" href="/" title="Custom PCB Prototype Manufacturer">TEST3PCB</a> 631 <div class="begins-row">Fast, Fine, and Free to Be.</div> 632 <p class="begins-des">Empowering innovators to turn ideas into reality.</p> 633 <div class="begins-icons"></div> 634 </div> 635 <div class="footer-area-r"> 636 <dl class="jump-menus"> 637 <dt>Capabilities</dt> 638 <dd> 639 <a href="/capabilities.html">Capabilities</a> 640 </dd> 641 <dd> 642 <a href="/pcb-assembly.html">PCB Assembly</a> 643 </dd> 644 </dl> 645 <dl class="jump-menus"> 646 <dt> 647 Products/Services 648 </dt> 649 <dd> 650 <a href="/orderonline.aspx">PCB Instant Quote</a> 651 </dd> 652 <dd> 653 <a href="/quotesmt.aspx">PCB Assembly Quote</a> 654 </dd> 655 <dd> 656 <a href="/flexible.aspx">FPC/Rigid-Flex PCB Quote</a> 657 </dd> 658 </dl> 659 <dl class="jump-menus"> 660 <dt> 661 Company 662 </dt> 663 <dd> 664 <a href="about.html">About Us</a> 665 </dd> 666 <dd> 667 <a href="contact.html">Contact Us</a> 668 </dd> 669 </dl> 670 <div class="payment-delivery"> 671 <div class="title-el">Payment Methods</div> 672 <div class="payment-view-box"></div> 673 <div class="title-el"> 674 Delivery Services 675 676 </div>
677 <div class="delivery-view-box"> 678 679 </div> 680 </div> 681 </div> 682 </div> 683</div> 684<div class="footer-copyright"> 685 <div class="wcontainer"> 686 <div class="copyright-tags"> 687 <span class="copyright-txt"> 688 © 2024 3PCB. All rights reserved. 689 </span> 690 <div class="jump-tags"> 691 <a href="/privacy_policy.html">Privacy Policy</a> 692 <a href="/terms_service.html">Terms of Service</a> 693 <a href="/cookies_policy.html">Cookies Policy</a> 694 <a href="/return_policy.html">Return & Refund Policy</a> 695 <a href="/shipping_policy.html">Shipping Policy</a> 696 <a href="/intellectual_property_policy.html">Intellectual Property Rights</a> 697 </div> 698 </div> 699 </div> 700</div> 701 702<!-- Google Tag Manager (noscript) -->
vendor: 75 bytes, lines 702-704
702 703<noscript> 704 <iframe src="https://www.googletagmanager.com/ns.html?id=
704GTM-PNR2JJPH
vendor: 99 bytes, lines 704-706
704" 705 height="0" width="0" style="display:none;visibility:hidden"></iframe> 706</noscript>
707<!-- End Google Tag Manager (noscript) --> 708
709<script> 710 $('body').delegate('.smintip', 'mouseover', function () { 711 712 var datawidth = $(this).attr("datawidth"); 713 if (datawidth) { 714 715 } 716 else { 717 datawidth = 280; 718 } 719 720 //var div = $(".wdetail-tips"); 721 //$("#tipp").html(''); 722 //div.css({ width: 300, left: 0, top: 25 }); 723 //$("#tipp").html('<div class="wdetail-tips" style="width: 220px; display: none"><p id="tipp">' + $(this).attr("data") + '</p><a class="ui-balloon-arrow"></a></div>'); 724 //console.log($(this).attr("data")); 725 if ($(this).find('.wdetail-tips').length == 0) 726 $(this).append('<div class="wdetail-tips" style="width:' + datawidth + 'px; display: none;top: 25px;"><p id="tipp">' + $(this).attr("data") + '</p><a class="ui-balloon-arrow"></a></div>');//$(this).find('.wdetail-tips').remove(); 727 728 729 730 $(this).find('.wdetail-tips').show(); 731 }) 732 733 $('body').delegate('.smintip', 'mouseout', function () { 734 $(this).find('.wdetail-tips').hide(); 735 //$(".wdetail-tips").hide(); 736 }); 737</script>
737 738 739 740 741
742<script type="text/javascript"> 743 744 745 746 747 748 749 750 function clkPricingMatrix() { 751 if (checkForm() == false) { 752 return; 753 } 754 OpenWin('Price Comparison Matrix', 910, 450, '/pricematrix.aspx?' + $("#orderForm").serialize()); 755 } 756 757 function ShowLayerOrder() { 758 759 // 夿æ¯å¦ç»é,æªç»éä¸å¼¹åºå± 760 if (getCookie("logFlag") == "0") { 761 return; 762 } 763 764 var layer = $("input[name='hidLayers']").val(); 765 766 767 if (layer >= 10) { 768 return; 769 } 770 771 if (layer == 6) { 772 $("#divLayer5").show(); $("#divLayer6").show(); 773 $("#divLayer7").hide(); $("#divLayer8").hide(); 774 } 775 776 else if (layer == 8) { 777 $("#divLayer5").show(); $("#divLayer6").show(); 778 $("#divLayer7").show(); $("#divLayer8").show(); 779 } 780 else { 781 $("#divLayer5").hide(); $("#divLayer6").hide(); 782 $("#divLayer7").hide(); $("#divLayer8").hide(); 783 } 784 785 786 $('#layerorder').show(); 787 $('#layerorder').dialog({ 788 title: 'Please fill in the layer order from top to bottom here. (Optional)', 789 width: 500, 790 height: 450, 791 closed: false, 792 cache: false, 793 modal: true 794 }); 795 } 796 797 798 function SetLayerNote() { 799 var layers = $("input[name='hidLayers']").val(); 800 var cx1 = $.trim($("#txtLayerCXL1").val()); 801 var cx2 = $.trim($("#txtLayerCXL2").val()); 802 var cx3 = $.trim($("#txtLayerCXL3").val()); 803 var cx4 = $.trim($("#txtLayerCXL4").val()); 804 var cx5 = $.trim($("#txtLayerCXL5").val()); 805 var cx6 = $.trim($("#txtLayerCXL6").val()); 806 var cx7 = $.trim($("#txtLayerCXL7").val()); 807 var cx8 = $.trim($("#txtLayerCXL8").val()); 808 if (cx1.length == 0 || cx2.length == 0 || cx3.length == 0 || cx4.length == 0 || (layers > 4 && (cx5.length == 0 || cx6.length == 0)) || (layers > 6 && (cx7.length == 0 || cx8.length == 0))) { 809 alert("Please input the layer order"); return; 810 } 811 812 var note = "Layer Order:L1:" + cx1 + ",L2:" + cx2 + ",L3:" + cx3 + ",L4:" + cx4; 813 if (layers > 4) { 814 note += ",L5:" + cx5 + ",L6:" + cx6; 815 } 816 if (layers > 6) { 817 note += ",L7:" + cx7 + ",L8:" + cx8; 818 } 819 //if (note.length > 0 && layers >= 4) { 820 // var orgNote = $("#txtPCBNote").val().replace(/Layer Order:.+?\./, "") + note + ". "; 821 // $("#txtPCBNote").val(orgNote); 822 823 //} 824 //else { 825 826 // var orgNote = $("#txtPCBNote").val().replace(/Layer Order:.+?\./, ""); 827 // $("#txtPCBNote").val(orgNote); 828 //} 829 $("#cxipt").val(note); 830 $("#layerorder").dialog("close"); 831 832 } 833 834 835 836 837 $(function () { 838 839 840 841 $("#dvConvertSize").click(function () { 842 $('#dvConvert').window('open'); // open a window 843 $('#dvConvert').window('center'); 844 $('#dvConvert').show(); 845 846 847 }) 848 849 $("#btnConvert").click(function () { 850 $('#dvConvert').window('close'); // open a window 851 852 var x = parseFloat($.trim($("#iptSizeX").val())); 853 var y = parseFloat($.trim($("#iptSizeY").val())); 854 855 if (x) { 856 $("#hidLength").val((25.4 * x).toFixed(1)); 857 } 858 859 if (y) { 860 $("#hidWidth").val((25.4 * y).toFixed(1)); 861 } 862 863 864 865 }) 866 867 868 $("#btnHopeTime").click(function () { 869 $('#dvConvertPCBMax').window('close'); 870 871 var HopeCash = $("#HopeCash").val(); 872 var HopeTime = $('#HopeTime').val(); 873 874 //if (!$("#HopeCash").validatebox("isValid")) { 875 // $("#HopeCash").focus(); 876 // return false; 877 878 //} 879 880 //if (!$("#btnHopeTime").validatebox("isValid")) { 881 // $("#btnHopeTime").focus(); 882 // return false; 883 884 //} 885 886 $("#HopeCashTxt").val(HopeCash); 887 $("#HopeTimeTxt").val(HopeTime); 888 }) 889 890 $(".example").hover(function () { 891 892 var offset = $(this).offset(); 893 894 $(this).next("img").show(); 895 }) 896 897 $('body').delegate('.smintip', 'mouseover', function () { 898 899 900 var datawidth = $(this).attr("datawidth"); 901 if (datawidth) { 902 903 } 904 else { 905 datawidth = 280; 906 } 907 908 //var div = $(".wdetail-tips"); 909 //$("#tipp").html(''); 910 //div.css({ width: 300, left: 0, top: 25 }); 911 //$("#tipp").html('<div class="wdetail-tips" style="width: 220px; display: none"><p id="tipp">' + $(this).attr("data") + '</p><a class="ui-balloon-arrow"></a></div>'); 912 //console.log($(this).attr("data")); 913 if ($(this).find('.wdetail-tips').length == 0) 914 $(this).append('<div class="wdetail-tips" style="width:' + datawidth + 'px; display: none;top: 25px;"><p id="tipp">' + $(this).attr("data") + '</p><a class="ui-balloon-arrow"></a></div>');
914//$(this).find('.wdetail-tips').remove(); 915 916 917 918 $(this).find('.wdetail-tips').show(); 919 }) 920 921 $('body').delegate('.smintip', 'mouseout', function () { 922 $(this).find('.wdetail-tips').hide(); 923 //$(".wdetail-tips").hide(); 924 }); 925 }) 926 927</script>
927 928
929<script> 930 function getCookie_google(cookieName) { 931 let cookie = {}; 932 document.cookie.split(";").forEach(function (el) { 933 let [key, value] = el.split("="); 934 if (key.indexOf(cookieName) > -1) { 935 cookie[key.trim()] = value; 936 } 937 }); 938 return Object.values(cookie); 939 } 940 //1 941 // Define dataLayer and the gtag function. 942 window.dataLayer = window.dataLayer || []; 943 function gtag() { dataLayer.push(arguments); } 944 945 var json_consent_status; 946 var cookievalue = getCookie_google("consentstatus"); 947 948 // Set default consent to 'denied' as a placeholder 949 // Determine actual values based on your own requirements 950 gtag("consent", "default", { 951 region: ['AT', 'BE', 'BG', 'CY', 'CZ', 'DE', 'DK', 'EE', 'ES', 'FI', 'FR', 'GR', 'HR', 'HU', 'IE', 'IS', 'IT', 'LI', 'LT', 'LU', 'LV', 'MT', 'NL', 'NO', 'PL', 'PT', 'RO', 'SE', 'SI', 'SK'], 952 'ad_storage': 'denied', 953 'ad_user_data': 'denied', 954 'ad_personalization': 'denied', 955 'analytics_storage': 'denied', 956 'wait_for_update': 500 957 }); 958 959 if (cookievalue.length != 0) { 960 if ((cookievalue == 'granted')) { 961 gtag("consent", "update", { 962 'ad_storage': 'granted', 963 'ad_user_data': 'granted', 964 'ad_personalization': 'granted', 965 'analytics_storage': 'granted' 966 }); 967 } else { 968 gtag("consent", "update", { 969 'ad_storage': 'denied', 970 'ad_user_data': 'denied', 971 'ad_personalization': 'denied', 972 'analytics_storage': 'denied' 973 }); 974 } 975 } 976</script>
976 977 978 979 980 981
982<script type="text/javascript" src="https://login.3pcb.com/VisitorJS.aspx"></script>
982 983 984<!-- Start of LiveChat (www.livechat.com) code -->
985<script> 986 window.__lc = window.__lc || {}; 987 window.__lc.license = 19438480; 988 window.__lc.integration_name = "manual_channels"; 989 window.__lc.product_name = "livechat"; 990 ; (function (n, t, c) { function i(n) { return e._h ? e._h.apply(null, n) : e._q.push(n) } var e = { _q: [], _h: null, _v: "2.0", on: function () { i(["on", c.call(arguments)]) }, once: function () { i(["once", c.call(arguments)]) }, off: function () { i(["off", c.call(arguments)]) }, get: function () { if (!e._h) throw new Error("[LiveChatWidget] You can't use getters before load."); return i(["get", c.call(arguments)]) }, call: function () { i(["call", c.call(arguments)]) }, init: function () { var n = t.createElement("script"); n.async = !0, n.type = "text/javascript", n.src = "https://cdn.livechatinc.com/tracking.js", t.head.appendChild(n) } }; !n.__lc.asyncInit && e.init(), n.LiveChatWidget = n.LiveChatWidget || e }(window, document, [].slice)) 991</script>
991 992<noscript><a href="https://www.livechat.com/chat-with/19438480/" rel="nofollow">Chat with us</a>, powered by <a href="https://www.livechat.com/?welcome" rel="noopener nofollow" target="_blank">LiveChat</a></noscript> 993<!-- End of LiveChat code --> 994 </div> 995</body> 996 997</html> 998
999<script> 1000 $(function () { 1001 $('.js-input-select .js-fill-text').click(function (e) { 1002 e.stopPropagation(); 1003 var $inputSelect = $(this).parents('.js-input-select'); 1004 var $downVal = $('.js-down-val'); 1005 if ($downVal.is(':animated')) { 1006 return; 1007 } 1008 if ($downVal.is(':visible')) { 1009 $downVal.slideUp(); 1010 $inputSelect.removeClass('active'); 1011 } else { 1012 $downVal.slideDown(); 1013 $inputSelect.addClass('active'); 1014 } 1015 }); 1016 $('.js-down-val li').click(function () { 1017 var liText = $(this).text(); 1018 $(this).addClass('active').siblings().removeClass('active'); 1019 console.log(liText); 1020 $(this).parents('.js-input-select').find('.js-fill-text').val(liText); 1021 $(this).parents('.js-input-select').removeClass('active'); 1022 $('.js-down-val').slideUp(); 1023 }); 1024 $(document).click(function (event) { 1025 var e = event || window.event; 1026 var tar = $(e.target); 1027 if (!tar.hasClass('js-fill-text') && !tar.parents('.js-input-select').hasClass('js-input-select')) { 1028 $('.js-input-select').removeClass('active'); 1029 $('.js-down-val').hide(); 1030 } 1031 }) 1032 }) 1033</script>
vendor: 2 bytes, line 1033
1033
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.