برغي توركس غاطس ثلاثي الفصوص لتشكيل الخيط
برغي توركس غاطس ثلاثي الفصوص لتشكيل الخيط
برغي توركس غاطس ثلاثي الفصوص لتشكيل الخيط
برغي توركس غاطس ثلاثي الفصوص لتشكيل الخيط
برغي توركس غاطس ثلاثي الفصوص لتشكيل الخيط

برغي توركس غاطس ثلاثي الفصوص لتشكيل الخيط

أحصل على آخر سعر
    الظل:
    وصف
    وصف المنتج
    اسم المنتج: مسامير قفل ذاتي غاطسة من Taptite Torx
    معيار الحجم: جميع البراغي تتوافق مع معيار ASME B 18.3 (الجدول 8-III) - 2012与SAE J 81 - 1997
    وصف المنتج:
    يدمج المسمار اللولبي المثلث الغاطس Torx ثلاثة هياكل رئيسية: رأس غاطس، وأخدود محرك Torx، وخيط مثلث ذاتي القفل. 1. يحتوي الرأس الغاطس على رأس مخروطي الشكل بدرجة 80-82 ويحتاج إلى استخدامه مع ثقب غاطس مثقوب مسبقًا. بعد الشد، يتم غمر الرأس الغاطس بالكامل في الفتحة الغاطسة لقطعة الشغل، مع سطح أملس وغير بارز، مما يمنع الخدوش، ويوفر مساحة التجميع، ويؤدي إلى مظهر أنيق. 2. يحتوي أخدود Torx على ستة أسطح متناظرة تحمل القوة، وتتفاعل بشكل كامل مع لقمة Torx مخصصة، مما يضمن نقل عزم الدوران بشكل موحد، ويمنع الانزلاق والتقطيع؛ يمكنه تحمل عزم الدوران العالي للقفل، وهو متين للتفكيك والتجميع المتكرر، كما يوفر تأثيرًا بسيطًا مضادًا للسرقة. 3. عندما يتم ربط خيط المقطع العرضي المثلث في الفتحة المحفورة مسبقًا، فإنه يعتمد على الأسطح القوسية الثلاثة لضغط المادة الأساسية، مما يتسبب في تشوه البلاستيك وبثق الخيط الداخلي المطابق مباشرة على الجدار الداخلي للفتحة، بدلاً من قطع المواد. يولد احتكاك الضغط ارتفاعًا طفيفًا في درجة الحرارة، وبعد التبريد، يستمر الخيط في الإمساك بالمادة الأساسية، مما يشكل عزم دوران ثابت محدد مسبقًا. ليس من السهل فكه في ظل ظروف الاهتزاز، مما يحقق تأثير تثبيت ثلاثي في ​​واحد للبثق الذاتي، والنقر الذاتي، والقفل الذاتي.
    معايير الأداء والمواد:
    تنقسم المواد إلى: الفولاذ الكربوني والفولاذ المقاوم للصدأ المارتنسيتي: 10B21/1018 و201/410، وما إلى ذلك، والتي تتطلب الكربنة أو التبريد لتحقيق صلابة السطح ≥450HV والصلابة الأساسية 270-370HV (ضمان المتانة ومنع الكسر الهش). وهي تستخدم بشكل رئيسي في حاويات الصفائح المعدنية أو صناعات الخزانات. يتم استخدام الفولاذ المقاوم للصدأ SUS304 (A2-70) وSUS316 (A4-70) بشكل رئيسي لتثبيت الأجزاء البلاستيكية بعد العمل البارد.
    ينهي:
    يتم في الغالب تلميع وتنظيف الفولاذ المقاوم للصدأ 304 و316 إلى لونه الأصلي، بينما يخضع الفولاذ المقاوم للصدأ المارتنسيتي والفولاذ الكربوني إلى معالجات سطحية مثل: السواد بالأكسدة، وطلاء الزنك، والطلاء بالنيكل، وطلاء الزنك الأسود، وطلاء داكروميت، وطلاء الجوميت.
    خطوة الخيط وقطر الخيط:
    2#-56、3#-48、4#-40、5#-40、6#-32、8#-32、10#-24、1/4-20、5/16-18、3/8-16、1/2-13، يمكن توفير الرسومات إذا كانت أقطار الخيط ودرجات الخيط الأخرى مطلوبة.
    صور المنتج:
    Taptite Torx Countersunk Self Lock Screws
    Torx Countersunk Trilobe Thread Forming Screws
    أبعاد المنتج:
     <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Self-Tapping Screw Thread Specification Reference Table</title> <style> *{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;} body{margin:24px auto;max-width:99%;padding:0 12px;} h2{text-align:center;color:#1a1a1a;margin-bottom:20px;} table{border-collapse:collapse;width:100%;font-size:14px;} th,td{border:1px solid #555;padding:9px 6px;text-align:center;vertical-align:middle;} th{background:#b3d9ff;font-weight:bold;} .left-align{text-align:left;} .query-box{margin:20px 0;padding:14px;border:1px solid #ccc;border-radius:6px;} .query-box input, .query-box select, .query-box button{padding:8px 11px;font-size:15px;margin:0 7px;} #query-result{margin-top:13px;font-size:16px;font-weight:600;} .error-text{color:#c22121;} .success-text{color:#00692c;} </style> </head> <body> <h2>Self-Tapping Screw Thread Specification Table (Unit: Inch)</h2> <!-- Query Operation Panel --> <div class="query-box"> <input id="thread-input" placeholder="Input Thread Spec: 2# / 3# / 4# / 5# / 6# / 8# / 10# / 1/4 / 5/16 / 3/8 / 7/16 / 1/2"> <select id="param-select"> <option value="PP">PP - Threads per inch</option> <option value="D">D - Max Major Diameter</option> <option value="dp">dp - Max Point Diameter</option> <option value="d1">d1 - Max Thread Circumscribed Circle Diameter</option> <option value="d2">d2 - Max Point Circumscribed Circle Diameter</option> <option value="L1max">L1 Max - Point Length Max</option> <option value="L1min">L1 Min - Point Length Min</option> <option value="L90">L Min Length (90° Head)</option> <option value="LCounter">L Min Length (Countersunk Head)</option> </select> <button onclick="searchSpecData()">Search Parameter Value</button> <div id="query-result"></div> </div> <!-- Table Render Container --> <div id="table-wrapper"></div> <script> // Raw full dataset extracted from the table image const specDataset = [ { spec: "2#", PP: 56, D: 0.086, dp: "/", d1: 0.088, d2: 0.070, L1max: 0.062, L1min: 0.036, L90: "5/32", LCounter: "3/16" }, { spec: "3#", PP: 48, D: 0.099, dp: "/", d1: 0.101, d2: 0.081, L1max: 0.073, L1min: 0.042, L90: "3/16", LCounter: "7/32" }, { spec: "4#", PP: 40, D: 0.112, dp: 0.086, d1: 0.115, d2: 0.090, L1max: 0.088, L1min: 0.050, L90: "3/16", LCounter: "1/4" }, { spec: "5#", PP: 40, D: 0.125, dp: 0.099, d1: 0.128, d2: 0.103, L1max: 0.088, L1min: 0.050, L90: "7/32", LCounter: "1/4" }, { spec: "6#", PP: 32, D: 0.138, dp: 0.106, d1: 0.141, d2: 0.111, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "5/16" }, { spec: "8#", PP: 32, D: 0.164, dp: 0.132, d1: 0.167, d2: 0.137, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "11/32" }, { spec: "10#", PP: 24, D: 0.190, dp: 0.147, d1: 0.194, d2: 0.153, L1max: 0.146, L1min: 0.083, L90: "5/16", LCounter: "13/32" }, { spec: "1/4", PP: 20, D: 0.250, dp: 0.198, d1: 0.255, d2: 0.206, L1max: 0.175, L1min: 0.100, L90: "13/32", LCounter: "1/2" }, { spec: "5/16", PP: 18, D: 0.313, dp: 0.255, d1: 0.318, d2: 0.264, L1max: 0.194, L1min: 0.111, L90: "15/32", LCounter: "5/8" }, { spec: "3/8", PP: 16, D: 0.375, dp: 0.310, d1: 0.381, d2: 0.320, L1max: 0.219, L1min: 0.125, L90: "9/16", LCounter: "23/32" }, { spec: "7/16", PP: 14, D: 0.438, dp: 0.361, d1: 0.445, d2: 0.375, L1max: 0.250, L1min: 0.143, L90: "21/32", LCounter: "13/16" }, { spec: "1/2", PP: 13, D: 0.500, dp: 0.416, d1: 0.508, d2: 0.433, L1max: 0.269, L1min: 0.154, L90: "23/32", LCounter: "7/9" } ]; // Column definition for table rendering const tableHeaderCols = [ "Thread Specification", "2#", "3#", "4#", "5#", "6#", "8#", "10#", "1/4", "5/16", "3/8", "7/16", "1/2" ]; const rowParamConfig = [ { label: "PP", fullName: "Threads per inch", fieldKey: "PP", subLabel: "" }, { label: "D", fullName: "Major Diameter", fieldKey: "D", subLabel: "Max" }, { label: "dp", fullName: "Point Diameter", fieldKey: "dp", subLabel: "Max" }, { label: "d1", fullName: "Thread Circumscribed Circle Diameter", fieldKey: "d1", subLabel: "Max" }, { label: "d2", fullName: "Point Circumscribed Circle Diameter", fieldKey: "d2", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1max", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1min", subLabel: "Min" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "L90", subLabel: "90° Head" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "LCounter", subLabel: "Countersunk Head" } ]; /** * Render complete specification table to page */ function renderFullSpecTable() { let htmlStr = `<table>`; // Table header row htmlStr += `<tr>`; tableHeaderCols.forEach(colName => { htmlStr += `<th class="left-align">${colName}</th>`; }); htmlStr += `</tr>`; // Generate each parameter data row rowParamConfig.forEach(rowCfg => { htmlStr += `<tr>`; // First column: parameter label + full name + sub label htmlStr += `<th class="left-align"> <div>${rowCfg.label}</div> <div>${rowCfg.fullName}</div> ${rowCfg.subLabel ? `<div>${rowCfg.subLabel}</div>` : ""} </th>`; // Fill each thread spec cell value specDataset.forEach(specItem => { htmlStr += `<td>${specItem[rowCfg.fieldKey]}</td>`; }); htmlStr += `</tr>`; }); htmlStr += `</table>`; document.getElementById("table-wrapper").innerHTML = htmlStr; } /** * Search spec parameter value by user input */ function searchSpecData() { const inputSpec = document.getElementById("thread-input").value.trim(); const targetParamKey = document.getElementById("param-select").value; const resultDom = document.getElementById("query-result"); let matchedSpec = null; // Match input thread specification for(let i=0; i<specDataset.length; i++) { if(specDataset[i].spec === inputSpec) { matchedSpec = specDataset[i]; break; } } if(!matchedSpec) { resultDom.className = "error-text"; resultDom.textContent = "Error: Invalid thread specification, please check input (example: 8# / 1/4)"; return; } // Map select text to readable full name const paramNameMap = { PP: "Threads per inch (PP)", D: "Max Major Diameter (D)", dp: "Max Point Diameter (dp)", d1: "Max Thread Circumscribed Circle Diameter (d1)", d2: "Max Point Circumscribed Circle Diameter (d2)", L1max: "Point Length Max (L1)", L1min: "Point Length Min (L1)", L90: "Min Nominal Length - 90° Head (L)", LCounter: "Min Nominal Length - Countersunk Head (L)" }; const value = matchedSpec[targetParamKey]; resultDom.className = "success-text"; resultDom.textContent = `Query Result | Thread Spec: ${inputSpec}, Parameter: ${paramNameMap[targetParamKey]}, Value = ${value}`; } // Auto render table after page loaded window.onload = renderFullSpecTable; </script> </body> </html> <div class = "query-box"> <input id = "thread-input" placeholder = "مواصفات موضوع الإدخال: 2# / 3# / 4# / 5# / 6# / 8# / 10# / 1/4 / 5/16 / 3/8 / 7/16 / 1/2"> <select id="param-select"> <option value="PP">PP - خيوط لكل بوصة</option> <option value="D">D - الحد الأقصى للقطر الرئيسي</option> <option value="dp">dp - أقصى قطر للنقطة</option> <option value="d1">d1 - الحد الأقصى لقطر الدائرة المحيطة بالخيط</option> <option value="d2">d2 - الحد الأقصى لقطر الدائرة المحيط بالنقطة</option> <option value="L1max">L1 الحد الأقصى - طول النقطة الأقصى</option> <option value="L1min">الحد الأدنى لطول النقطة - الحد الأدنى لطول النقطة</option> <option value="L90">الطول الأدنى L (رأس 90°)</option> <option value="LCounter">الطول الأدنى L (الرأس الغاطس)</option> </select> <button onclick="searchSpecData()">قيمة معلمة البحث</button> <div id="query-result"></div> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Self-Tapping Screw Thread Specification Reference Table</title> <style> *{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;} body{margin:24px auto;max-width:99%;padding:0 12px;} h2{text-align:center;color:#1a1a1a;margin-bottom:20px;} table{border-collapse:collapse;width:100%;font-size:14px;} th,td{border:1px solid #555;padding:9px 6px;text-align:center;vertical-align:middle;} th{background:#b3d9ff;font-weight:bold;} .left-align{text-align:left;} .query-box{margin:20px 0;padding:14px;border:1px solid #ccc;border-radius:6px;} .query-box input, .query-box select, .query-box button{padding:8px 11px;font-size:15px;margin:0 7px;} #query-result{margin-top:13px;font-size:16px;font-weight:600;} .error-text{color:#c22121;} .success-text{color:#00692c;} </style> </head> <body> <h2>Self-Tapping Screw Thread Specification Table (Unit: Inch)</h2> <!-- Query Operation Panel --> <div class="query-box"> <input id="thread-input" placeholder="Input Thread Spec: 2# / 3# / 4# / 5# / 6# / 8# / 10# / 1/4 / 5/16 / 3/8 / 7/16 / 1/2"> <select id="param-select"> <option value="PP">PP - Threads per inch</option> <option value="D">D - Max Major Diameter</option> <option value="dp">dp - Max Point Diameter</option> <option value="d1">d1 - Max Thread Circumscribed Circle Diameter</option> <option value="d2">d2 - Max Point Circumscribed Circle Diameter</option> <option value="L1max">L1 Max - Point Length Max</option> <option value="L1min">L1 Min - Point Length Min</option> <option value="L90">L Min Length (90° Head)</option> <option value="LCounter">L Min Length (Countersunk Head)</option> </select> <button onclick="searchSpecData()">Search Parameter Value</button> <div id="query-result"></div> </div> <!-- Table Render Container --> <div id="table-wrapper"></div> <script> // Raw full dataset extracted from the table image const specDataset = [ { spec: "2#", PP: 56, D: 0.086, dp: "/", d1: 0.088, d2: 0.070, L1max: 0.062, L1min: 0.036, L90: "5/32", LCounter: "3/16" }, { spec: "3#", PP: 48, D: 0.099, dp: "/", d1: 0.101, d2: 0.081, L1max: 0.073, L1min: 0.042, L90: "3/16", LCounter: "7/32" }, { spec: "4#", PP: 40, D: 0.112, dp: 0.086, d1: 0.115, d2: 0.090, L1max: 0.088, L1min: 0.050, L90: "3/16", LCounter: "1/4" }, { spec: "5#", PP: 40, D: 0.125, dp: 0.099, d1: 0.128, d2: 0.103, L1max: 0.088, L1min: 0.050, L90: "7/32", LCounter: "1/4" }, { spec: "6#", PP: 32, D: 0.138, dp: 0.106, d1: 0.141, d2: 0.111, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "5/16" }, { spec: "8#", PP: 32, D: 0.164, dp: 0.132, d1: 0.167, d2: 0.137, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "11/32" }, { spec: "10#", PP: 24, D: 0.190, dp: 0.147, d1: 0.194, d2: 0.153, L1max: 0.146, L1min: 0.083, L90: "5/16", LCounter: "13/32" }, { spec: "1/4", PP: 20, D: 0.250, dp: 0.198, d1: 0.255, d2: 0.206, L1max: 0.175, L1min: 0.100, L90: "13/32", LCounter: "1/2" }, { spec: "5/16", PP: 18, D: 0.313, dp: 0.255, d1: 0.318, d2: 0.264, L1max: 0.194, L1min: 0.111, L90: "15/32", LCounter: "5/8" }, { spec: "3/8", PP: 16, D: 0.375, dp: 0.310, d1: 0.381, d2: 0.320, L1max: 0.219, L1min: 0.125, L90: "9/16", LCounter: "23/32" }, { spec: "7/16", PP: 14, D: 0.438, dp: 0.361, d1: 0.445, d2: 0.375, L1max: 0.250, L1min: 0.143, L90: "21/32", LCounter: "13/16" }, { spec: "1/2", PP: 13, D: 0.500, dp: 0.416, d1: 0.508, d2: 0.433, L1max: 0.269, L1min: 0.154, L90: "23/32", LCounter: "7/9" } ]; // Column definition for table rendering const tableHeaderCols = [ "Thread Specification", "2#", "3#", "4#", "5#", "6#", "8#", "10#", "1/4", "5/16", "3/8", "7/16", "1/2" ]; const rowParamConfig = [ { label: "PP", fullName: "Threads per inch", fieldKey: "PP", subLabel: "" }, { label: "D", fullName: "Major Diameter", fieldKey: "D", subLabel: "Max" }, { label: "dp", fullName: "Point Diameter", fieldKey: "dp", subLabel: "Max" }, { label: "d1", fullName: "Thread Circumscribed Circle Diameter", fieldKey: "d1", subLabel: "Max" }, { label: "d2", fullName: "Point Circumscribed Circle Diameter", fieldKey: "d2", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1max", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1min", subLabel: "Min" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "L90", subLabel: "90° Head" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "LCounter", subLabel: "Countersunk Head" } ]; /** * Render complete specification table to page */ function renderFullSpecTable() { let htmlStr = `<table>`; // Table header row htmlStr += `<tr>`; tableHeaderCols.forEach(colName => { htmlStr += `<th class="left-align">${colName}</th>`; }); htmlStr += `</tr>`; // Generate each parameter data row rowParamConfig.forEach(rowCfg => { htmlStr += `<tr>`; // First column: parameter label + full name + sub label htmlStr += `<th class="left-align"> <div>${rowCfg.label}</div> <div>${rowCfg.fullName}</div> ${rowCfg.subLabel ? `<div>${rowCfg.subLabel}</div>` : ""} </th>`; // Fill each thread spec cell value specDataset.forEach(specItem => { htmlStr += `<td>${specItem[rowCfg.fieldKey]}</td>`; }); htmlStr += `</tr>`; }); htmlStr += `</table>`; document.getElementById("table-wrapper").innerHTML = htmlStr; } /** * Search spec parameter value by user input */ function searchSpecData() { const inputSpec = document.getElementById("thread-input").value.trim(); const targetParamKey = document.getElementById("param-select").value; const resultDom = document.getElementById("query-result"); let matchedSpec = null; // Match input thread specification for(let i=0; i<specDataset.length; i++) { if(specDataset[i].spec === inputSpec) { matchedSpec = specDataset[i]; break; } } if(!matchedSpec) { resultDom.className = "error-text"; resultDom.textContent = "Error: Invalid thread specification, please check input (example: 8# / 1/4)"; return; } // Map select text to readable full name const paramNameMap = { PP: "Threads per inch (PP)", D: "Max Major Diameter (D)", dp: "Max Point Diameter (dp)", d1: "Max Thread Circumscribed Circle Diameter (d1)", d2: "Max Point Circumscribed Circle Diameter (d2)", L1max: "Point Length Max (L1)", L1min: "Point Length Min (L1)", L90: "Min Nominal Length - 90° Head (L)", LCounter: "Min Nominal Length - Countersunk Head (L)" }; const value = matchedSpec[targetParamKey]; resultDom.className = "success-text"; resultDom.textContent = `Query Result | Thread Spec: ${inputSpec}, Parameter: ${paramNameMap[targetParamKey]}, Value = ${value}`; } // Auto render table after page loaded window.onload = renderFullSpecTable; </script> </body> </html> const specDataset = [ { المواصفات: "2#"، PP: 56، D: 0.086، dp: "/"، d1: 0.088، d2: 0.070، L1max: 0.062، L1min: 0.036، L90: "5/32"، LCcounter: "3/16" }، { المواصفات: "3#"، PP: 48، D: 0.099، dp: "/"، d1: 0.101، d2: 0.081، L1max: 0.073، L1min: 0.042، L90: "3/16"، LCcounter: "7/32" }، { المواصفات: "4#"، PP: 40، D: 0.112، dp: 0.086، d1: 0.115، d2: 0.090، L1max: 0.088، L1min: 0.050، L90: "3/16"، LCcounter: "1/4" }، { المواصفات: "5#"، PP: 40، D: 0.125، dp: 0.099، d1: 0.128، d2: 0.103، L1max: 0.088، L1min: 0.050، L90: "7/32"، LCcounter: "1/4" }، { المواصفات: "6#"، PP: 32، D: 0.138، dp: 0.106، d1: 0.141، d2: 0.111، L1max: 0.109، L1min: 0.062، L90: "1/4"، LCcounter: "5/16" }، { المواصفات: "8#"، PP: 32، D: 0.164، dp: 0.132، d1: 0.167، d2: 0.137، L1max: 0.109، L1min: 0.062، L90: "1/4"، LCcounter: "11/32" }, { المواصفات: "10#"، PP: 24، D: 0.190، dp: 0.147، d1: 0.194، d2: 0.153، L1max: 0.146، L1min: 0.083، L90: "5/16"، LCcounter: "13/32" }، { المواصفات: "1/4"، PP: 20، D: 0.250، dp: 0.198، d1: 0.255، d2: 0.206، L1max: 0.175، L1min: 0.100، L90: "13/32"، LCcounter: "1/2"}، { المواصفات: "5/16"، PP: 18، D: 0.313، dp: 0.255، d1: 0.318، d2: 0.264، L1max: 0.194، L1min: 0.111، L90: "15/32"، LCcounter: "5/8" }، { المواصفات: "3/8"، PP: 16، D: 0.375، dp: 0.310، d1: 0.381، d2: 0.320، L1max: 0.219، L1min: 0.125، L90: "9/16"، LCcounter: "23/32" }، { المواصفات: "7/16"، PP: 14، D: 0.438، dp: 0.361، d1: 0.445، d2: 0.375، L1max: 0.250، L1min: 0.143، L90: "21/32"، LCcounter: "13/16" }، { المواصفات: "1/2"، PP: 13، D: 0.500، dp: 0.416، d1: 0.508، d2: 0.433، L1max: 0.269، L1min: 0.154، L90: "23/32"، العداد: "7/9" } <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Self-Tapping Screw Thread Specification Reference Table</title> <style> *{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;} body{margin:24px auto;max-width:99%;padding:0 12px;} h2{text-align:center;color:#1a1a1a;margin-bottom:20px;} table{border-collapse:collapse;width:100%;font-size:14px;} th,td{border:1px solid #555;padding:9px 6px;text-align:center;vertical-align:middle;} th{background:#b3d9ff;font-weight:bold;} .left-align{text-align:left;} .query-box{margin:20px 0;padding:14px;border:1px solid #ccc;border-radius:6px;} .query-box input, .query-box select, .query-box button{padding:8px 11px;font-size:15px;margin:0 7px;} #query-result{margin-top:13px;font-size:16px;font-weight:600;} .error-text{color:#c22121;} .success-text{color:#00692c;} </style> </head> <body> <h2>Self-Tapping Screw Thread Specification Table (Unit: Inch)</h2> <!-- Query Operation Panel --> <div class="query-box"> <input id="thread-input" placeholder="Input Thread Spec: 2# / 3# / 4# / 5# / 6# / 8# / 10# / 1/4 / 5/16 / 3/8 / 7/16 / 1/2"> <select id="param-select"> <option value="PP">PP - Threads per inch</option> <option value="D">D - Max Major Diameter</option> <option value="dp">dp - Max Point Diameter</option> <option value="d1">d1 - Max Thread Circumscribed Circle Diameter</option> <option value="d2">d2 - Max Point Circumscribed Circle Diameter</option> <option value="L1max">L1 Max - Point Length Max</option> <option value="L1min">L1 Min - Point Length Min</option> <option value="L90">L Min Length (90° Head)</option> <option value="LCounter">L Min Length (Countersunk Head)</option> </select> <button onclick="searchSpecData()">Search Parameter Value</button> <div id="query-result"></div> </div> <!-- Table Render Container --> <div id="table-wrapper"></div> <script> // Raw full dataset extracted from the table image const specDataset = [ { spec: "2#", PP: 56, D: 0.086, dp: "/", d1: 0.088, d2: 0.070, L1max: 0.062, L1min: 0.036, L90: "5/32", LCounter: "3/16" }, { spec: "3#", PP: 48, D: 0.099, dp: "/", d1: 0.101, d2: 0.081, L1max: 0.073, L1min: 0.042, L90: "3/16", LCounter: "7/32" }, { spec: "4#", PP: 40, D: 0.112, dp: 0.086, d1: 0.115, d2: 0.090, L1max: 0.088, L1min: 0.050, L90: "3/16", LCounter: "1/4" }, { spec: "5#", PP: 40, D: 0.125, dp: 0.099, d1: 0.128, d2: 0.103, L1max: 0.088, L1min: 0.050, L90: "7/32", LCounter: "1/4" }, { spec: "6#", PP: 32, D: 0.138, dp: 0.106, d1: 0.141, d2: 0.111, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "5/16" }, { spec: "8#", PP: 32, D: 0.164, dp: 0.132, d1: 0.167, d2: 0.137, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "11/32" }, { spec: "10#", PP: 24, D: 0.190, dp: 0.147, d1: 0.194, d2: 0.153, L1max: 0.146, L1min: 0.083, L90: "5/16", LCounter: "13/32" }, { spec: "1/4", PP: 20, D: 0.250, dp: 0.198, d1: 0.255, d2: 0.206, L1max: 0.175, L1min: 0.100, L90: "13/32", LCounter: "1/2" }, { spec: "5/16", PP: 18, D: 0.313, dp: 0.255, d1: 0.318, d2: 0.264, L1max: 0.194, L1min: 0.111, L90: "15/32", LCounter: "5/8" }, { spec: "3/8", PP: 16, D: 0.375, dp: 0.310, d1: 0.381, d2: 0.320, L1max: 0.219, L1min: 0.125, L90: "9/16", LCounter: "23/32" }, { spec: "7/16", PP: 14, D: 0.438, dp: 0.361, d1: 0.445, d2: 0.375, L1max: 0.250, L1min: 0.143, L90: "21/32", LCounter: "13/16" }, { spec: "1/2", PP: 13, D: 0.500, dp: 0.416, d1: 0.508, d2: 0.433, L1max: 0.269, L1min: 0.154, L90: "23/32", LCounter: "7/9" } ]; // Column definition for table rendering const tableHeaderCols = [ "Thread Specification", "2#", "3#", "4#", "5#", "6#", "8#", "10#", "1/4", "5/16", "3/8", "7/16", "1/2" ]; const rowParamConfig = [ { label: "PP", fullName: "Threads per inch", fieldKey: "PP", subLabel: "" }, { label: "D", fullName: "Major Diameter", fieldKey: "D", subLabel: "Max" }, { label: "dp", fullName: "Point Diameter", fieldKey: "dp", subLabel: "Max" }, { label: "d1", fullName: "Thread Circumscribed Circle Diameter", fieldKey: "d1", subLabel: "Max" }, { label: "d2", fullName: "Point Circumscribed Circle Diameter", fieldKey: "d2", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1max", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1min", subLabel: "Min" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "L90", subLabel: "90° Head" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "LCounter", subLabel: "Countersunk Head" } ]; /** * Render complete specification table to page */ function renderFullSpecTable() { let htmlStr = `<table>`; // Table header row htmlStr += `<tr>`; tableHeaderCols.forEach(colName => { htmlStr += `<th class="left-align">${colName}</th>`; }); htmlStr += `</tr>`; // Generate each parameter data row rowParamConfig.forEach(rowCfg => { htmlStr += `<tr>`; // First column: parameter label + full name + sub label htmlStr += `<th class="left-align"> <div>${rowCfg.label}</div> <div>${rowCfg.fullName}</div> ${rowCfg.subLabel ? `<div>${rowCfg.subLabel}</div>` : ""} </th>`; // Fill each thread spec cell value specDataset.forEach(specItem => { htmlStr += `<td>${specItem[rowCfg.fieldKey]}</td>`; }); htmlStr += `</tr>`; }); htmlStr += `</table>`; document.getElementById("table-wrapper").innerHTML = htmlStr; } /** * Search spec parameter value by user input */ function searchSpecData() { const inputSpec = document.getElementById("thread-input").value.trim(); const targetParamKey = document.getElementById("param-select").value; const resultDom = document.getElementById("query-result"); let matchedSpec = null; // Match input thread specification for(let i=0; i<specDataset.length; i++) { if(specDataset[i].spec === inputSpec) { matchedSpec = specDataset[i]; break; } } if(!matchedSpec) { resultDom.className = "error-text"; resultDom.textContent = "Error: Invalid thread specification, please check input (example: 8# / 1/4)"; return; } // Map select text to readable full name const paramNameMap = { PP: "Threads per inch (PP)", D: "Max Major Diameter (D)", dp: "Max Point Diameter (dp)", d1: "Max Thread Circumscribed Circle Diameter (d1)", d2: "Max Point Circumscribed Circle Diameter (d2)", L1max: "Point Length Max (L1)", L1min: "Point Length Min (L1)", L90: "Min Nominal Length - 90° Head (L)", LCounter: "Min Nominal Length - Countersunk Head (L)" }; const value = matchedSpec[targetParamKey]; resultDom.className = "success-text"; resultDom.textContent = `Query Result | Thread Spec: ${inputSpec}, Parameter: ${paramNameMap[targetParamKey]}, Value = ${value}`; } // Auto render table after page loaded window.onload = renderFullSpecTable; </script> </body> </html> constrowParamConfig = [{ label: "PP"، fullName: "مؤشرات الترابط في البوصة"، fieldKey: "PP"، subLabel: "" }، { label: "D"، الاسم الكامل: "القطر الرئيسي"، fieldKey: "D"، تسمية فرعية: "Max" }، { label: "dp"، fullName: "Point Diameter"، fieldKey: "dp"، تسمية فرعية: "Max" }، { label: "d1"، الاسم الكامل: "قطر الدائرة المحيطة بالخيط"، مفتاح الحقل: "d1"، التسمية الفرعية: "الحد الأقصى" }، { التسمية: "d2"، الاسم الكامل: "قطر الدائرة المحيطة بالنقطة"، مفتاح الحقل: "d2"، التسمية الفرعية: "الحد الأقصى" }، { التسمية: "L1"، الاسم الكامل: "طول النقطة"، مفتاح الحقل: "L1max"، العلامة الفرعية: "الحد الأقصى" }، { التسمية: "L1"، الاسم الكامل: "طول النقطة"، مفتاح الحقل: "L1min"، التسمية الفرعية: "Min" }، { label: "L"، الاسم الكامل: "الحد الأدنى للطول الاسمي"، مفتاح الحقل: "L90"، التسمية الفرعية: "90° Head" }، { label: "L"، الاسم الكامل: "الحد الأدنى للطول الاسمي"، مفتاح الحقل: "LCcounter"، التسمية الفرعية: "الرأس الغاطس" } <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Self-Tapping Screw Thread Specification Reference Table</title> <style> *{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;} body{margin:24px auto;max-width:99%;padding:0 12px;} h2{text-align:center;color:#1a1a1a;margin-bottom:20px;} table{border-collapse:collapse;width:100%;font-size:14px;} th,td{border:1px solid #555;padding:9px 6px;text-align:center;vertical-align:middle;} th{background:#b3d9ff;font-weight:bold;} .left-align{text-align:left;} .query-box{margin:20px 0;padding:14px;border:1px solid #ccc;border-radius:6px;} .query-box input, .query-box select, .query-box button{padding:8px 11px;font-size:15px;margin:0 7px;} #query-result{margin-top:13px;font-size:16px;font-weight:600;} .error-text{color:#c22121;} .success-text{color:#00692c;} </style> </head> <body> <h2>Self-Tapping Screw Thread Specification Table (Unit: Inch)</h2> <!-- Query Operation Panel --> <div class="query-box"> <input id="thread-input" placeholder="Input Thread Spec: 2# / 3# / 4# / 5# / 6# / 8# / 10# / 1/4 / 5/16 / 3/8 / 7/16 / 1/2"> <select id="param-select"> <option value="PP">PP - Threads per inch</option> <option value="D">D - Max Major Diameter</option> <option value="dp">dp - Max Point Diameter</option> <option value="d1">d1 - Max Thread Circumscribed Circle Diameter</option> <option value="d2">d2 - Max Point Circumscribed Circle Diameter</option> <option value="L1max">L1 Max - Point Length Max</option> <option value="L1min">L1 Min - Point Length Min</option> <option value="L90">L Min Length (90° Head)</option> <option value="LCounter">L Min Length (Countersunk Head)</option> </select> <button onclick="searchSpecData()">Search Parameter Value</button> <div id="query-result"></div> </div> <!-- Table Render Container --> <div id="table-wrapper"></div> <script> // Raw full dataset extracted from the table image const specDataset = [ { spec: "2#", PP: 56, D: 0.086, dp: "/", d1: 0.088, d2: 0.070, L1max: 0.062, L1min: 0.036, L90: "5/32", LCounter: "3/16" }, { spec: "3#", PP: 48, D: 0.099, dp: "/", d1: 0.101, d2: 0.081, L1max: 0.073, L1min: 0.042, L90: "3/16", LCounter: "7/32" }, { spec: "4#", PP: 40, D: 0.112, dp: 0.086, d1: 0.115, d2: 0.090, L1max: 0.088, L1min: 0.050, L90: "3/16", LCounter: "1/4" }, { spec: "5#", PP: 40, D: 0.125, dp: 0.099, d1: 0.128, d2: 0.103, L1max: 0.088, L1min: 0.050, L90: "7/32", LCounter: "1/4" }, { spec: "6#", PP: 32, D: 0.138, dp: 0.106, d1: 0.141, d2: 0.111, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "5/16" }, { spec: "8#", PP: 32, D: 0.164, dp: 0.132, d1: 0.167, d2: 0.137, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "11/32" }, { spec: "10#", PP: 24, D: 0.190, dp: 0.147, d1: 0.194, d2: 0.153, L1max: 0.146, L1min: 0.083, L90: "5/16", LCounter: "13/32" }, { spec: "1/4", PP: 20, D: 0.250, dp: 0.198, d1: 0.255, d2: 0.206, L1max: 0.175, L1min: 0.100, L90: "13/32", LCounter: "1/2" }, { spec: "5/16", PP: 18, D: 0.313, dp: 0.255, d1: 0.318, d2: 0.264, L1max: 0.194, L1min: 0.111, L90: "15/32", LCounter: "5/8" }, { spec: "3/8", PP: 16, D: 0.375, dp: 0.310, d1: 0.381, d2: 0.320, L1max: 0.219, L1min: 0.125, L90: "9/16", LCounter: "23/32" }, { spec: "7/16", PP: 14, D: 0.438, dp: 0.361, d1: 0.445, d2: 0.375, L1max: 0.250, L1min: 0.143, L90: "21/32", LCounter: "13/16" }, { spec: "1/2", PP: 13, D: 0.500, dp: 0.416, d1: 0.508, d2: 0.433, L1max: 0.269, L1min: 0.154, L90: "23/32", LCounter: "7/9" } ]; // Column definition for table rendering const tableHeaderCols = [ "Thread Specification", "2#", "3#", "4#", "5#", "6#", "8#", "10#", "1/4", "5/16", "3/8", "7/16", "1/2" ]; const rowParamConfig = [ { label: "PP", fullName: "Threads per inch", fieldKey: "PP", subLabel: "" }, { label: "D", fullName: "Major Diameter", fieldKey: "D", subLabel: "Max" }, { label: "dp", fullName: "Point Diameter", fieldKey: "dp", subLabel: "Max" }, { label: "d1", fullName: "Thread Circumscribed Circle Diameter", fieldKey: "d1", subLabel: "Max" }, { label: "d2", fullName: "Point Circumscribed Circle Diameter", fieldKey: "d2", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1max", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1min", subLabel: "Min" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "L90", subLabel: "90° Head" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "LCounter", subLabel: "Countersunk Head" } ]; /** * Render complete specification table to page */ function renderFullSpecTable() { let htmlStr = `<table>`; // Table header row htmlStr += `<tr>`; tableHeaderCols.forEach(colName => { htmlStr += `<th class="left-align">${colName}</th>`; }); htmlStr += `</tr>`; // Generate each parameter data row rowParamConfig.forEach(rowCfg => { htmlStr += `<tr>`; // First column: parameter label + full name + sub label htmlStr += `<th class="left-align"> <div>${rowCfg.label}</div> <div>${rowCfg.fullName}</div> ${rowCfg.subLabel ? `<div>${rowCfg.subLabel}</div>` : ""} </th>`; // Fill each thread spec cell value specDataset.forEach(specItem => { htmlStr += `<td>${specItem[rowCfg.fieldKey]}</td>`; }); htmlStr += `</tr>`; }); htmlStr += `</table>`; document.getElementById("table-wrapper").innerHTML = htmlStr; } /** * Search spec parameter value by user input */ function searchSpecData() { const inputSpec = document.getElementById("thread-input").value.trim(); const targetParamKey = document.getElementById("param-select").value; const resultDom = document.getElementById("query-result"); let matchedSpec = null; // Match input thread specification for(let i=0; i<specDataset.length; i++) { if(specDataset[i].spec === inputSpec) { matchedSpec = specDataset[i]; break; } } if(!matchedSpec) { resultDom.className = "error-text"; resultDom.textContent = "Error: Invalid thread specification, please check input (example: 8# / 1/4)"; return; } // Map select text to readable full name const paramNameMap = { PP: "Threads per inch (PP)", D: "Max Major Diameter (D)", dp: "Max Point Diameter (dp)", d1: "Max Thread Circumscribed Circle Diameter (d1)", d2: "Max Point Circumscribed Circle Diameter (d2)", L1max: "Point Length Max (L1)", L1min: "Point Length Min (L1)", L90: "Min Nominal Length - 90° Head (L)", LCounter: "Min Nominal Length - Countersunk Head (L)" }; const value = matchedSpec[targetParamKey]; resultDom.className = "success-text"; resultDom.textContent = `Query Result | Thread Spec: ${inputSpec}, Parameter: ${paramNameMap[targetParamKey]}, Value = ${value}`; } // Auto render table after page loaded window.onload = renderFullSpecTable; </script> </body> </html> // إنشاء صف بيانات كل معلمةrowParamConfig.forEach(rowCfg => { htmlStr += `<tr>`; // العمود الأول: تسمية المعلمة + الاسم الكامل + التسمية الفرعية htmlStr += `<th class="left-align"> <div>${rowCfg.label}</div> <div>${rowCfg.fullName}</div> ${rowCfg.subLabel ? `<div>${rowCfg.subLabel}</div>` : ""} </th>`; // املأ قيمة الخلية الخاصة بكل مؤشر ترابط specDataset.forEach(specItem => { htmlStr += `<td>${specItem[rowCfg.fieldKey]</td>`; }); <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Self-Tapping Screw Thread Specification Reference Table</title> <style> *{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;} body{margin:24px auto;max-width:99%;padding:0 12px;} h2{text-align:center;color:#1a1a1a;margin-bottom:20px;} table{border-collapse:collapse;width:100%;font-size:14px;} th,td{border:1px solid #555;padding:9px 6px;text-align:center;vertical-align:middle;} th{background:#b3d9ff;font-weight:bold;} .left-align{text-align:left;} .query-box{margin:20px 0;padding:14px;border:1px solid #ccc;border-radius:6px;} .query-box input, .query-box select, .query-box button{padding:8px 11px;font-size:15px;margin:0 7px;} #query-result{margin-top:13px;font-size:16px;font-weight:600;} .error-text{color:#c22121;} .success-text{color:#00692c;} </style> </head> <body> <h2>Self-Tapping Screw Thread Specification Table (Unit: Inch)</h2> <!-- Query Operation Panel --> <div class="query-box"> <input id="thread-input" placeholder="Input Thread Spec: 2# / 3# / 4# / 5# / 6# / 8# / 10# / 1/4 / 5/16 / 3/8 / 7/16 / 1/2"> <select id="param-select"> <option value="PP">PP - Threads per inch</option> <option value="D">D - Max Major Diameter</option> <option value="dp">dp - Max Point Diameter</option> <option value="d1">d1 - Max Thread Circumscribed Circle Diameter</option> <option value="d2">d2 - Max Point Circumscribed Circle Diameter</option> <option value="L1max">L1 Max - Point Length Max</option> <option value="L1min">L1 Min - Point Length Min</option> <option value="L90">L Min Length (90° Head)</option> <option value="LCounter">L Min Length (Countersunk Head)</option> </select> <button onclick="searchSpecData()">Search Parameter Value</button> <div id="query-result"></div> </div> <!-- Table Render Container --> <div id="table-wrapper"></div> <script> // Raw full dataset extracted from the table image const specDataset = [ { spec: "2#", PP: 56, D: 0.086, dp: "/", d1: 0.088, d2: 0.070, L1max: 0.062, L1min: 0.036, L90: "5/32", LCounter: "3/16" }, { spec: "3#", PP: 48, D: 0.099, dp: "/", d1: 0.101, d2: 0.081, L1max: 0.073, L1min: 0.042, L90: "3/16", LCounter: "7/32" }, { spec: "4#", PP: 40, D: 0.112, dp: 0.086, d1: 0.115, d2: 0.090, L1max: 0.088, L1min: 0.050, L90: "3/16", LCounter: "1/4" }, { spec: "5#", PP: 40, D: 0.125, dp: 0.099, d1: 0.128, d2: 0.103, L1max: 0.088, L1min: 0.050, L90: "7/32", LCounter: "1/4" }, { spec: "6#", PP: 32, D: 0.138, dp: 0.106, d1: 0.141, d2: 0.111, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "5/16" }, { spec: "8#", PP: 32, D: 0.164, dp: 0.132, d1: 0.167, d2: 0.137, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "11/32" }, { spec: "10#", PP: 24, D: 0.190, dp: 0.147, d1: 0.194, d2: 0.153, L1max: 0.146, L1min: 0.083, L90: "5/16", LCounter: "13/32" }, { spec: "1/4", PP: 20, D: 0.250, dp: 0.198, d1: 0.255, d2: 0.206, L1max: 0.175, L1min: 0.100, L90: "13/32", LCounter: "1/2" }, { spec: "5/16", PP: 18, D: 0.313, dp: 0.255, d1: 0.318, d2: 0.264, L1max: 0.194, L1min: 0.111, L90: "15/32", LCounter: "5/8" }, { spec: "3/8", PP: 16, D: 0.375, dp: 0.310, d1: 0.381, d2: 0.320, L1max: 0.219, L1min: 0.125, L90: "9/16", LCounter: "23/32" }, { spec: "7/16", PP: 14, D: 0.438, dp: 0.361, d1: 0.445, d2: 0.375, L1max: 0.250, L1min: 0.143, L90: "21/32", LCounter: "13/16" }, { spec: "1/2", PP: 13, D: 0.500, dp: 0.416, d1: 0.508, d2: 0.433, L1max: 0.269, L1min: 0.154, L90: "23/32", LCounter: "7/9" } ]; // Column definition for table rendering const tableHeaderCols = [ "Thread Specification", "2#", "3#", "4#", "5#", "6#", "8#", "10#", "1/4", "5/16", "3/8", "7/16", "1/2" ]; const rowParamConfig = [ { label: "PP", fullName: "Threads per inch", fieldKey: "PP", subLabel: "" }, { label: "D", fullName: "Major Diameter", fieldKey: "D", subLabel: "Max" }, { label: "dp", fullName: "Point Diameter", fieldKey: "dp", subLabel: "Max" }, { label: "d1", fullName: "Thread Circumscribed Circle Diameter", fieldKey: "d1", subLabel: "Max" }, { label: "d2", fullName: "Point Circumscribed Circle Diameter", fieldKey: "d2", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1max", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1min", subLabel: "Min" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "L90", subLabel: "90° Head" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "LCounter", subLabel: "Countersunk Head" } ]; /** * Render complete specification table to page */ function renderFullSpecTable() { let htmlStr = `<table>`; // Table header row htmlStr += `<tr>`; tableHeaderCols.forEach(colName => { htmlStr += `<th class="left-align">${colName}</th>`; }); htmlStr += `</tr>`; // Generate each parameter data row rowParamConfig.forEach(rowCfg => { htmlStr += `<tr>`; // First column: parameter label + full name + sub label htmlStr += `<th class="left-align"> <div>${rowCfg.label}</div> <div>${rowCfg.fullName}</div> ${rowCfg.subLabel ? `<div>${rowCfg.subLabel}</div>` : ""} </th>`; // Fill each thread spec cell value specDataset.forEach(specItem => { htmlStr += `<td>${specItem[rowCfg.fieldKey]}</td>`; }); htmlStr += `</tr>`; }); htmlStr += `</table>`; document.getElementById("table-wrapper").innerHTML = htmlStr; } /** * Search spec parameter value by user input */ function searchSpecData() { const inputSpec = document.getElementById("thread-input").value.trim(); const targetParamKey = document.getElementById("param-select").value; const resultDom = document.getElementById("query-result"); let matchedSpec = null; // Match input thread specification for(let i=0; i<specDataset.length; i++) { if(specDataset[i].spec === inputSpec) { matchedSpec = specDataset[i]; break; } } if(!matchedSpec) { resultDom.className = "error-text"; resultDom.textContent = "Error: Invalid thread specification, please check input (example: 8# / 1/4)"; return; } // Map select text to readable full name const paramNameMap = { PP: "Threads per inch (PP)", D: "Max Major Diameter (D)", dp: "Max Point Diameter (dp)", d1: "Max Thread Circumscribed Circle Diameter (d1)", d2: "Max Point Circumscribed Circle Diameter (d2)", L1max: "Point Length Max (L1)", L1min: "Point Length Min (L1)", L90: "Min Nominal Length - 90° Head (L)", LCounter: "Min Nominal Length - Countersunk Head (L)" }; const value = matchedSpec[targetParamKey]; resultDom.className = "success-text"; resultDom.textContent = `Query Result | Thread Spec: ${inputSpec}, Parameter: ${paramNameMap[targetParamKey]}, Value = ${value}`; } // Auto render table after page loaded window.onload = renderFullSpecTable; </script> </body> </html> } // تعيين نص لتحديد الاسم الكامل القابل للقراءة const paramNameMap = { PP: "خيوط في البوصة (PP)"، D: "القطر الرئيسي الأقصى (D)"، dp: "أقصى قطر للنقطة (dp)"، d1: "الحد الأقصى لقطر الدائرة المحيطة بالخيط (d1)"، d2: "أقصى قطر للدائرة المحيطة بالنقطة (d2)"، L1max: "طول النقطة الأقصى (L1)"، L1min: "الحد الأدنى لطول النقطة (L1)"، L90: "الطول الاسمي الأدنى - 90 درجة الرأس (L)"، LCcounter: "الطول الاسمي الأدنى - الرأس الغاطس (L)" }; <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Self-Tapping Screw Thread Specification Reference Table</title> <style> *{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;} body{margin:24px auto;max-width:99%;padding:0 12px;} h2{text-align:center;color:#1a1a1a;margin-bottom:20px;} table{border-collapse:collapse;width:100%;font-size:14px;} th,td{border:1px solid #555;padding:9px 6px;text-align:center;vertical-align:middle;} th{background:#b3d9ff;font-weight:bold;} .left-align{text-align:left;} .query-box{margin:20px 0;padding:14px;border:1px solid #ccc;border-radius:6px;} .query-box input, .query-box select, .query-box button{padding:8px 11px;font-size:15px;margin:0 7px;} #query-result{margin-top:13px;font-size:16px;font-weight:600;} .error-text{color:#c22121;} .success-text{color:#00692c;} </style> </head> <body> <h2>Self-Tapping Screw Thread Specification Table (Unit: Inch)</h2> <!-- Query Operation Panel --> <div class="query-box"> <input id="thread-input" placeholder="Input Thread Spec: 2# / 3# / 4# / 5# / 6# / 8# / 10# / 1/4 / 5/16 / 3/8 / 7/16 / 1/2"> <select id="param-select"> <option value="PP">PP - Threads per inch</option> <option value="D">D - Max Major Diameter</option> <option value="dp">dp - Max Point Diameter</option> <option value="d1">d1 - Max Thread Circumscribed Circle Diameter</option> <option value="d2">d2 - Max Point Circumscribed Circle Diameter</option> <option value="L1max">L1 Max - Point Length Max</option> <option value="L1min">L1 Min - Point Length Min</option> <option value="L90">L Min Length (90° Head)</option> <option value="LCounter">L Min Length (Countersunk Head)</option> </select> <button onclick="searchSpecData()">Search Parameter Value</button> <div id="query-result"></div> </div> <!-- Table Render Container --> <div id="table-wrapper"></div> <script> // Raw full dataset extracted from the table image const specDataset = [ { spec: "2#", PP: 56, D: 0.086, dp: "/", d1: 0.088, d2: 0.070, L1max: 0.062, L1min: 0.036, L90: "5/32", LCounter: "3/16" }, { spec: "3#", PP: 48, D: 0.099, dp: "/", d1: 0.101, d2: 0.081, L1max: 0.073, L1min: 0.042, L90: "3/16", LCounter: "7/32" }, { spec: "4#", PP: 40, D: 0.112, dp: 0.086, d1: 0.115, d2: 0.090, L1max: 0.088, L1min: 0.050, L90: "3/16", LCounter: "1/4" }, { spec: "5#", PP: 40, D: 0.125, dp: 0.099, d1: 0.128, d2: 0.103, L1max: 0.088, L1min: 0.050, L90: "7/32", LCounter: "1/4" }, { spec: "6#", PP: 32, D: 0.138, dp: 0.106, d1: 0.141, d2: 0.111, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "5/16" }, { spec: "8#", PP: 32, D: 0.164, dp: 0.132, d1: 0.167, d2: 0.137, L1max: 0.109, L1min: 0.062, L90: "1/4", LCounter: "11/32" }, { spec: "10#", PP: 24, D: 0.190, dp: 0.147, d1: 0.194, d2: 0.153, L1max: 0.146, L1min: 0.083, L90: "5/16", LCounter: "13/32" }, { spec: "1/4", PP: 20, D: 0.250, dp: 0.198, d1: 0.255, d2: 0.206, L1max: 0.175, L1min: 0.100, L90: "13/32", LCounter: "1/2" }, { spec: "5/16", PP: 18, D: 0.313, dp: 0.255, d1: 0.318, d2: 0.264, L1max: 0.194, L1min: 0.111, L90: "15/32", LCounter: "5/8" }, { spec: "3/8", PP: 16, D: 0.375, dp: 0.310, d1: 0.381, d2: 0.320, L1max: 0.219, L1min: 0.125, L90: "9/16", LCounter: "23/32" }, { spec: "7/16", PP: 14, D: 0.438, dp: 0.361, d1: 0.445, d2: 0.375, L1max: 0.250, L1min: 0.143, L90: "21/32", LCounter: "13/16" }, { spec: "1/2", PP: 13, D: 0.500, dp: 0.416, d1: 0.508, d2: 0.433, L1max: 0.269, L1min: 0.154, L90: "23/32", LCounter: "7/9" } ]; // Column definition for table rendering const tableHeaderCols = [ "Thread Specification", "2#", "3#", "4#", "5#", "6#", "8#", "10#", "1/4", "5/16", "3/8", "7/16", "1/2" ]; const rowParamConfig = [ { label: "PP", fullName: "Threads per inch", fieldKey: "PP", subLabel: "" }, { label: "D", fullName: "Major Diameter", fieldKey: "D", subLabel: "Max" }, { label: "dp", fullName: "Point Diameter", fieldKey: "dp", subLabel: "Max" }, { label: "d1", fullName: "Thread Circumscribed Circle Diameter", fieldKey: "d1", subLabel: "Max" }, { label: "d2", fullName: "Point Circumscribed Circle Diameter", fieldKey: "d2", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1max", subLabel: "Max" }, { label: "L1", fullName: "Point Length", fieldKey: "L1min", subLabel: "Min" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "L90", subLabel: "90° Head" }, { label: "L", fullName: "Minimum Nominal Length", fieldKey: "LCounter", subLabel: "Countersunk Head" } ]; /** * Render complete specification table to page */ function renderFullSpecTable() { let htmlStr = `<table>`; // Table header row htmlStr += `<tr>`; tableHeaderCols.forEach(colName => { htmlStr += `<th class="left-align">${colName}</th>`; }); htmlStr += `</tr>`; // Generate each parameter data row rowParamConfig.forEach(rowCfg => { htmlStr += `<tr>`; // First column: parameter label + full name + sub label htmlStr += `<th class="left-align"> <div>${rowCfg.label}</div> <div>${rowCfg.fullName}</div> ${rowCfg.subLabel ? `<div>${rowCfg.subLabel}</div>` : ""} </th>`; // Fill each thread spec cell value specDataset.forEach(specItem => { htmlStr += `<td>${specItem[rowCfg.fieldKey]}</td>`; }); htmlStr += `</tr>`; }); htmlStr += `</table>`; document.getElementById("table-wrapper").innerHTML = htmlStr; } /** * Search spec parameter value by user input */ function searchSpecData() { const inputSpec = document.getElementById("thread-input").value.trim(); const targetParamKey = document.getElementById("param-select").value; const resultDom = document.getElementById("query-result"); let matchedSpec = null; // Match input thread specification for(let i=0; i<specDataset.length; i++) { if(specDataset[i].spec === inputSpec) { matchedSpec = specDataset[i]; break; } } if(!matchedSpec) { resultDom.className = "error-text"; resultDom.textContent = "Error: Invalid thread specification, please check input (example: 8# / 1/4)"; return; } // Map select text to readable full name const paramNameMap = { PP: "Threads per inch (PP)", D: "Max Major Diameter (D)", dp: "Max Point Diameter (dp)", d1: "Max Thread Circumscribed Circle Diameter (d1)", d2: "Max Point Circumscribed Circle Diameter (d2)", L1max: "Point Length Max (L1)", L1min: "Point Length Min (L1)", L90: "Min Nominal Length - 90° Head (L)", LCounter: "Min Nominal Length - Countersunk Head (L)" }; const value = matchedSpec[targetParamKey]; resultDom.className = "success-text"; resultDom.textContent = `Query Result | Thread Spec: ${inputSpec}, Parameter: ${paramNameMap[targetParamKey]}, Value = ${value}`; } // Auto render table after page loaded window.onload = renderFullSpecTable; </script> </body> </html>
    Contact Us Now
    Enter your inquiry details, We will reply you in 24 hours.
    Please fill in the information
    * Please fill in your e-mail
    * Please fill in the content

    تفاصيل الاتصال

    • Whatsapp: +86 18151119858
    • الالكتروني: lekoumetal@gmail.com
    • عنوان الشركة: Factory Building No. 3, No. 77 Kangzhuang Road, Zhoushi Town, Kunshan City, Suzhou, Jiangsu China

    ارسل السؤال

    ارسل السؤال
    *
    *

    We will contact you immediately

    Fill in more information so that we can get in touch with you faster

    Privacy statement: Your privacy is very important to Us. Our company promises not to disclose your personal information to any external company with out your explicit permission.

    إرسال