Skip to content

Commit 01340e5

Browse files
committed
Refactor alert, prompt, and confirm functions
1 parent f001dbb commit 01340e5

File tree

1 file changed

+34
-34
lines changed
  • 1-js/02-first-steps/06-alert-prompt-confirm

1 file changed

+34
-34
lines changed
Lines changed: 34 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,66 @@
1-
## การโต้ตอบ: alert, prompt และ confirm
1+
# การโต้ตอบ: alert, prompt, confirm
22

3-
เนื่องจากเราจะใช้เบราว์เซอร์เป็นสภาพแวดล้อมในการสาธิตของเรา มาดูฟังก์ชันสองสามอย่างเพื่อโต้ตอบกับผู้เข้าชม: `alert`, `prompt` และ `confirm`
3+
เนื่องจากเราจะใช้เบราว์เซอร์เป็นสภาพแวดล้อมในการสาธิต เรามาดูฟังก์ชันสองสามตัวที่ใช้ในการโต้ตอบกับผู้ใช้กัน ได้แก่ `alert`, `prompt` และ `confirm`
44

55
## alert
66

7-
ฟังก์ชันนี้เราเคยเห็นกันมาแล้ว มันแสดงข้อความและรอผู้เข้าชมกด "OK"
7+
เราเคยเห็น `alert` มาแล้ว มันใช้ในการแสดงข้อความและรอให้ผู้ใช้กดปุ่ม "OK"
88

99
ตัวอย่างเช่น:
1010

1111
```js run
12-
alert("hello");
12+
alert("Hello");
1313
```
1414

15-
หน้าต่างเล็กๆ ที่มีข้อความเรียกว่า *โมดอลวินโดว์* คำว่า "โมดอล" หมายความว่าผู้เข้าชมไม่สามารถโต้ตอบกับส่วนอื่นของหน้าเว็บ กดปุ่มอื่น ฯลฯ ได้เลยจนกว่าพวกเขาจะจัดการกับหน้าต่างนี้ ในกรณีนี้ -- จนกว่าพวกเขาจะกด "OK"
15+
หน้าต่างขนาดเล็กที่แสดงข้อความนี้เรียกว่า *modal window* คำว่า "modal" หมายความว่าผู้ใช้จะไม่สามารถโต้ตอบกับส่วนอื่นๆ ของหน้าเว็บ กดปุ่มอื่นๆ หรือทำอย่างอื่นได้ จนกว่าจะจัดการกับหน้าต่างนี้เสร็จ ในกรณีนี้คือจนกว่าจะกดปุ่ม "OK"
1616

1717
## prompt
1818

19-
ฟังก์ชัน `prompt` ยอมรับอาร์กิวเมนต์สองอย่าง:
19+
ฟังก์ชัน `prompt` รับอาร์กิวเมนต์สองตัว:
2020

2121
```js no-beautify
2222
result = prompt(title, [default]);
2323
```
2424

25-
มันแสดงโมดอลวินโดว์ที่มีข้อความพร้อมช่องป้อนข้อความสำหรับผู้เข้าชม และปุ่ม OK/Cancel
25+
มันจะแสดง modal window ที่มีข้อความ ช่องให้ผู้ใช้กรอกข้อมูล และปุ่ม OK/Cancel
2626

2727
`title`
28-
: ข้อความที่จะแสดงให้ผู้เข้าชม
28+
: ข้อความที่จะแสดงให้ผู้ใช้เห็น
2929

3030
`default`
31-
: พารามิเตอร์ที่สองเป็นทางเลือก (จะใส่หรือไม่ใส่ก็ได้) เป็นค่าเริ่มต้นสำหรับช่องป้อนข้อมูล
31+
: อาร์กิวเมนต์ที่สองซึ่งเป็นตัวเลือก ใช้เป็นค่าเริ่มต้นสำหรับช่องกรอกข้อมูล
3232

33-
```smart header="เครื่องหมายวงเล็บเหลี่ยมในไวยากรณ์ `[...]`"
34-
เครื่องหมายวงเล็บเหลี่ยมรอบ `default` ในไวยากรณ์ด้านบนแสดงว่าพารามิเตอร์นั้นเป็นทางเลือก (จะใส่หรือไม่ใส่ก็ได้) ไม่ใช่ข้อบังคับ
33+
```smart header="วงเล็บในไวยากรณ์ `[...]`"
34+
วงเล็บรอบๆ `default` ในไวยากรณ์ด้านบนหมายความว่าพารามิเตอร์นี้เป็นตัวเลือก ไม่จำเป็นต้องใส่ก็ได้
3535
```
3636
37-
ผู้เข้าชมสามารถพิมพ์ข้อความลงในช่องป้อนข้อมูลของ prompt และกด OK จากนั้นเราจะได้รับข้อความนั้นใน `result` หรือพวกเขาสามารถยกเลิกการป้อนข้อมูลโดยกด Cancel หรือกดปุ่ม `key:Esc` จากนั้นเราจะได้รับ `null` เป็น `result`
37+
ผู้ใช้สามารถพิมพ์ข้อความลงในช่อง prompt แล้วกดปุ่ม OK จากนั้นเราจะได้ข้อความนั้นใน `result` หรือผู้ใช้อาจยกเลิกการป้อนข้อมูลได้โดยกดปุ่ม Cancel หรือกดปุ่ม `Esc` ซึ่งในกรณีนี้ `result` จะมีค่าเป็น `null`
3838
39-
การเรียกใช้ `prompt` จะส่งคืนข้อความจากช่องป้อนข้อมูลหรือ `null` หากยกเลิกการป้อนข้อมูล
39+
การเรียกใช้ `prompt` จะคืนค่าเป็นข้อความจากช่องกรอกข้อมูล หรือเป็น `null` หากมีการยกเลิกการป้อนข้อมูล
4040
4141
ตัวอย่างเช่น:
4242
4343
```js run
44-
let age = prompt('คุณอายุเท่าไหร่?', 100);
44+
let age = prompt('How old are you?', 100);
4545
46-
alert(`คุณอายุ ${age} ปี!`); // คุณอายุ 100 ปี!
46+
alert(`You are ${age} years old!`); // You are 100 years old!
4747
```
4848

49-
````warn header="ใน IE: แนะนำให้ใส่ `default` เสมอ"
50-
พารามิเตอร์ที่สองเป็นทางเลือก แต่ถ้าเราไม่ใส่ Internet Explorer จะใส่ข้อความ `"undefined"` ลงใน prompt
49+
```warn header="ใน IE: ควรระบุ `default` เสมอ"
50+
อาร์กิวเมนต์ที่สองเป็นตัวเลือก แต่หากเราไม่ระบุมัน Internet Explorer จะแทรกข้อความ `"undefined"` ลงในช่อง prompt
5151

52-
รันโค้ดนี้ใน Internet Explorer เพื่อดู:
52+
ลองรันโค้ดนี้ใน Internet Explorer เพื่อดู:
5353

5454
```js run
5555
let test = prompt("Test");
56+
```
5657

58+
ดังนั้น เพื่อให้ prompt แสดงผลได้ถูกต้องใน IE เราแนะนำให้ระบุอาร์กิวเมนต์ที่สองเสมอ:
5759

58-
ดังนั้นเพื่อให้ prompts ไม่มีข้อความว่า `undefined` ลงในช่องป้อนข้อมูล สำหรับ IE แล้วเราแนะนำให้ให้พารามิเตอร์ที่สองเสมอ:
59-
60-
js run
60+
```js run
6161
let test = prompt("Test", ''); // <-- สำหรับ IE
6262
```
63-
````
63+
```
6464
6565
## confirm
6666
@@ -70,36 +70,36 @@ let test = prompt("Test", ''); // <-- สำหรับ IE
7070
result = confirm(question);
7171
```
7272

73-
ฟังก์ชัน `confirm` แสดงโมดอลวินโดว์พร้อม `question` และปุ่มสองปุ่ม: OK และ Cancel
73+
ฟังก์ชัน `confirm` จะแสดง modal window ที่มี `question` และปุ่มสองปุ่มคือ OK และ Cancel
7474

75-
ผลลัพธ์คือ `true` หากกด OK และ `false` หากกด Cancel/`key:Esc`
75+
ผลลัพธ์จะเป็น `true` หากกดปุ่ม OK และเป็น `false` หากกดปุ่มอื่น
7676

7777
ตัวอย่างเช่น:
7878

7979
```js run
80-
let isBoss = confirm("คุณเป็นหัวหน้าหรือไม่");
80+
let isBoss = confirm("Are you the boss?");
8181

8282
alert( isBoss ); // true ถ้ากด OK
8383
```
8484

8585
## สรุป
8686

87-
เราได้กล่าวถึงฟังก์ชันเฉพาะของเบราว์เซอร์ 3 ฟังก์ชันเพื่อโต้ตอบกับผู้เข้าชม:
87+
เราได้กล่าวถึงฟังก์ชันเฉพาะของเบราว์เซอร์ 3 ตัวที่ใช้ในการโต้ตอบกับผู้ใช้:
8888

8989
`alert`
9090
: แสดงข้อความ
9191

9292
`prompt`
93-
: แสดงข้อความขอให้ผู้ใช้ป้อนข้อความ มันจะส่งคืนข้อความหรือ `null` หากกดปุ่ม Cancel หรือ `key:Esc`
93+
: แสดงข้อความขอให้ผู้ใช้ป้อนข้อความ คืนค่าเป็นข้อความนั้น หรือคืนค่า `null` หากกดปุ่ม Cancel หรือ `Esc`
9494

95-
`confirm`
96-
: แสดงข้อความและรอให้ผู้ใช้กด "OK" หรือ "Cancel" มันจะส่งคืน `true` สำหรับ OK และ `false` สำหรับ Cancel/`key:Esc`
95+
`confirm`
96+
: แสดงข้อความและรอให้ผู้ใช้กดปุ่ม "OK" หรือ "Cancel" คืนค่า `true` สำหรับปุ่ม OK และ `false` สำหรับปุ่ม Cancel หรือ `Esc`
9797

98-
วิธีการทั้งหมดเหล่านี้เป็นโมดอล: โมดอลจะหยุดการทำงานของสคริปต์และไม่อนุญาตให้ผู้เข้าชมโต้ตอบกับส่วนอื่นของหน้าจนกว่าหน้าต่างจะถูกปิด
98+
เมธอดทั้งหมดนี้เป็น modal: พวกมันจะหยุดการทำงานของสคริปต์และไม่อนุญาตให้ผู้ใช้โต้ตอบกับส่วนที่เหลือของหน้าจนกว่าจะปิดหน้าต่างนั้นไป
9999

100-
มีข้อจำกัดสองข้อที่แบ่งปันโดยวิธีการทั้งหมดข้างต้น:
100+
มีข้อจำกัดสองอย่างที่ใช้กับทุกเมธอดข้างต้น:
101101

102-
1. ตำแหน่งที่แน่นอนของโมดอลวินโดว์ถูกกำหนดโดยเบราว์เซอร์ โดยปกติจะอยู่ตรงกลาง
103-
2. รูปลักษณ์ที่แน่นอนของหน้าต่างก็ขึ้นอยู่กับเบราว์เซอร์เช่นกัน เราไม่สามารถปรับเปลี่ยนได้
102+
1. ตำแหน่งที่แน่นอนของ modal window จะถูกกำหนดโดยเบราว์เซอร์ โดยปกติจะอยู่ตรงกลาง
103+
2. รูปลักษณ์ที่แน่นอนของหน้าต่างก็ขึ้นอยู่กับเบราว์เซอร์เช่นกัน เราไม่สามารถปรับแต่งได้
104104

105-
นั่นคือราคาของความเรียบง่าย มีวิธีอื่นๆ ในการแสดงหน้าต่างที่สวยงามและการโต้ตอบที่หลากหลายกับผู้เข้าชม แต่ถ้าเราไม่สนใจ “ความสวยงาม” มากนัก วิธีการเหล่านี้ก็ใช้งานได้ดี
105+
นั่นคือราคาของความเรียบง่าย มีวิธีอื่นในการแสดงหน้าต่างที่สวยงามและการโต้ตอบกับผู้ใช้ที่ซับซ้อนกว่านี้ แต่หากฟีเจอร์พิเศษไม่ใช่สิ่งสำคัญ เมธอดเหล่านี้ก็ใช้งานได้ดีเช่นกัน

0 commit comments

Comments
 (0)