ถาม:
สวัสดีผู้เชี่ยวชาญสคริปต์! วิธีการพิจารณาว่าข้อความใดที่เลือกใน HTA
--ทำ
คำตอบ:
สวัสดีทำ. คุณรู้ไหมว่าคนส่วนใหญ่คิดว่าการเขียน“ สวัสดีผู้เชี่ยวชาญด้านสคริปต์!” คอลัมน์ทุกวันเป็นหนึ่งในงานที่น่าสนใจและน่าตื่นเต้นที่สุดในโลก อาจเป็นไปได้ว่าถ้าผู้เชี่ยวชาญด้านสคริปต์ที่เขียนคอลัมน์นี้ไม่ได้ขี้เกียจ ตัวอย่างเช่นหลายครั้งที่เขาเลือกปัญหาที่เขาคิดว่าสามารถเขียนลงในสคริปต์ โดยปกติแล้วเขาจะไม่มีสคริปต์ในมือที่สามารถทำงานที่กล่าวถึงในคำถามได้ แต่เขารู้ว่าสามารถเขียนสคริปต์ดังกล่าวได้ นี่เป็นวิธีที่พิสูจน์แล้ว แต่ไม่น่าตื่นเต้นเป็นพิเศษ
อย่างไรก็ตามคำถามนี้แตกต่างกันเล็กน้อย คุณจะพิจารณาได้อย่างไรว่ามีการเลือกข้อความใดใน HTA อนิจจาเราไม่สามารถบอกได้ว่าคุณสามารถกำหนดข้อความที่คุณเลือกใน HTA ได้หรือไม่ อย่างไรก็ตามปรากฎว่าคุณมั่นใจได้ว่า:
<html>
<head>
<title> htatest </title>
</head>
<scriptLanguage = "vbscript">
การเลือกย่อย
setObjselection = document.selection.createrange ()
msgboxobjselection.text
enddub
</script>
<body>
<textareaname = "scriptarea" rows = 5cols = 40> </textarea> <p>
<อินพุต = runButtonType = "ปุ่ม" value = "showSelection" onClick = "showSelection">
</body>
เรากำลังใช้ HTA ขนาดเล็กที่เรียบง่ายที่นี่ซึ่งมีลักษณะเช่นนี้:
อะไร คุณจะไม่มีความประทับใจได้อย่างไร? ดังนั้นลองดู พิมพ์ข้อความบางส่วนในพื้นที่ข้อความนี้และเน้นส่วนหนึ่งของข้อความ:
ตอนนี้คลิกปุ่มที่มีป้ายกำกับแสดงการเลือก โชคดีที่คุณจะเห็นกล่องข้อความบอกคุณว่ามีการเลือกข้อความใดแล้ว:
คุณพูดถูก: นั่นคือสิ่งที่ดูเหมือน
แล้วทั้งหมดนี้ทำอย่างไร? ก่อนอื่นเราสร้าง HTA ด้วยพื้นที่ข้อความและปุ่ม เราไม่ได้หารือเกี่ยวกับรายละเอียดของการสร้าง HTA เองหากคุณต้องการข้อมูลพื้นหลังให้ตรวจสอบศูนย์นักพัฒนา HTA หรือเว็บคาสต์สัปดาห์ที่ 3 บน HTAs วันนี้เราจะมุ่งเน้นเฉพาะรูทีนย่อยที่คุณเรียกใช้เมื่อคุณคลิกปุ่มนี้:
การเลือกย่อย
setObjselection = document.selection.createrange ()
msgboxobjselection.text
enddub
ถูกต้อง: มีรหัสเพียงสองบรรทัด ก่อนอื่นเราสร้างวัตถุ Textrange ใหม่ กระบวนการนี้สามารถนำไปใช้ได้โดยการเรียกใช้เมธอด createRange () ซึ่งเกิดขึ้นเป็นส่วนหนึ่งของเอกสารการเลือกวัตถุ: