Đối với trong phạm vi nodejs

Trong chương này, chúng ta sẽ đề cập đến lựa chọn trong tài liệu, cũng như lựa chọn trong các trường biểu mẫu, chẳng hạn như

Example: italic and bold

0

JavaScript có thể truy cập một lựa chọn hiện có, chọn/bỏ chọn toàn bộ hoặc một phần các nút DOM, xóa nội dung đã chọn khỏi tài liệu, gói nội dung đó vào một thẻ, v.v.

Bạn có thể tìm thấy một số công thức cho các nhiệm vụ phổ biến ở cuối chương, trong phần “Tóm tắt”. Có thể điều đó đáp ứng nhu cầu hiện tại của bạn, nhưng bạn sẽ nhận được nhiều hơn thế nếu bạn đọc toàn bộ văn bản

Các đối tượng

Example: italic and bold

1 và

Example: italic and bold

2 cơ bản rất dễ nắm bắt và sau đó bạn sẽ không cần công thức nào để khiến chúng làm những gì bạn muốn

Phạm vi

Khái niệm cơ bản của lựa chọn là Phạm vi, về cơ bản là một cặp “điểm biên”. phạm vi bắt đầu và phạm vi kết thúc

Đối tượng

Example: italic and bold

1 được tạo không có tham số

let range = new Range();

Sau đó, chúng ta có thể đặt ranh giới lựa chọn bằng cách sử dụng

Example: italic and bold

4 và

Example: italic and bold

5

Như bạn có thể đoán, hơn nữa chúng ta sẽ sử dụng các đối tượng

Example: italic and bold

1 để lựa chọn, nhưng trước tiên hãy tạo một vài đối tượng như vậy

Chọn văn bản một phần

Điều thú vị là đối số đầu tiên

Example: italic and bold

7 trong cả hai phương thức có thể là nút văn bản hoặc nút phần tử và ý nghĩa của đối số thứ hai phụ thuộc vào điều đó

Nếu

Example: italic and bold

7 là một nút văn bản, thì

Example: italic and bold

9 phải là vị trí trong văn bản của nó

Ví dụ, với phần tử

Example: italic and bold

10, chúng ta có thể tạo dãy chứa các chữ cái “ll” như sau

Example: italic and bold

2

Ở đây, chúng tôi lấy con đầu tiên của

Example: italic and bold

11 (đó là nút văn bản) và chỉ định vị trí văn bản bên trong nó

Đối với trong phạm vi nodejs

Chọn các nút phần tử

Ngoài ra, nếu

Example: italic and bold

7 là một nút phần tử, thì

Example: italic and bold

9 phải là số con

Điều đó rất hữu ích để tạo các phạm vi chứa toàn bộ các nút, không dừng ở đâu đó bên trong văn bản của chúng

Ví dụ: chúng tôi có một đoạn tài liệu phức tạp hơn

Example: italic and bold

Đây là cấu trúc DOM của nó với cả nút phần tử và nút văn bản

Hãy tạo một phạm vi cho

Example: italic and bold

14

Như chúng ta có thể thấy, cụm từ này bao gồm chính xác hai con của

Example: italic and bold

11, với chỉ mục là

Example: italic and bold

16 và

Example: italic and bold

17

Đối với trong phạm vi nodejs

  • Điểm bắt đầu có

    Example: italic and bold

    11 là cha mẹ của

    Example: italic and bold

    7 và

    Example: italic and bold

    16 là phần bù

    Vì vậy, chúng tôi có thể đặt nó là

    Example: italic and bold

    41

  • Điểm kết thúc cũng có

    Example: italic and bold

    11 làm gốc

    Example: italic and bold

    7, nhưng

    Example: italic and bold

    44 làm phần bù (nó chỉ định phạm vi lên tới, nhưng không bao gồm

    Example: italic and bold

    9)

    Vì vậy, chúng tôi có thể đặt nó là

    Example: italic and bold

    46

Đây là bản demo. Nếu bạn chạy nó, bạn có thể thấy văn bản được chọn

Example: italic and bold

1

Đây là một giá thử nghiệm linh hoạt hơn, nơi bạn có thể đặt số bắt đầu/kết thúc phạm vi và khám phá các biến thể khác

Example: italic and bold

4

E. g. chọn trong cùng một

Example: italic and bold

11 từ offset

Example: italic and bold

17 đến

Example: italic and bold

49 cho chúng ta phạm vi

Example: italic and bold

50

Đối với trong phạm vi nodejs

Các nút bắt đầu và kết thúc có thể khác nhau

Chúng tôi không phải sử dụng cùng một nút trong

Example: italic and bold

51 và

Example: italic and bold

52. Một phạm vi có thể trải rộng trên nhiều nút không liên quan. Điều quan trọng duy nhất là kết thúc sau phần bắt đầu trong tài liệu

Chọn một mảnh lớn hơn

Hãy tạo một vùng chọn lớn hơn trong ví dụ của chúng ta, như thế này

Đối với trong phạm vi nodejs

Chúng tôi đã biết làm thế nào để làm điều đó. Chúng ta chỉ cần đặt phần đầu và phần cuối làm phần bù tương đối trong các nút văn bản

Chúng ta cần phải tạo ra một phạm vi, mà

  • bắt đầu từ vị trí thứ 2 trong

    Example: italic and bold

    11 con đầu lòng (lấy tất cả trừ hai chữ cái đầu của "Ví dụ. ")
  • kết thúc ở vị trí thứ 3 trong

    Example: italic and bold

    54 con đầu lòng (lấy ba chữ cái đầu tiên của chữ “đậm”, nhưng không còn nữa)

Example: italic and bold

5

Như bạn có thể thấy, khá dễ dàng để tạo ra một loạt bất cứ thứ gì chúng ta muốn

Nếu chúng tôi muốn lấy toàn bộ các nút, chúng tôi có thể chuyển các phần tử trong

Example: italic and bold

55. Nếu không, chúng ta có thể làm việc ở cấp độ văn bản

Thuộc tính phạm vi

Đối tượng phạm vi mà chúng tôi đã tạo trong ví dụ trên có các thuộc tính sau

Đối với trong phạm vi nodejs

  • Example: italic and bold

    56,

    Example: italic and bold

    57 – nút và phần bù của điểm bắt đầu,
    • trong ví dụ trên. nút văn bản đầu tiên bên trong

      Example: italic and bold

      11 và

      Example: italic and bold

      44
  • let range = new Range();
    60,
    let range = new Range();
    61 – nút và phần bù của phần cuối,
    • trong ví dụ trên. nút văn bản đầu tiên bên trong

      Example: italic and bold

      54 và
      let range = new Range();
      63
  • let range = new Range();
    64 – boolean,
    let range = new Range();
    65 nếu phạm vi bắt đầu và kết thúc tại cùng một điểm (vì vậy không có nội dung bên trong phạm vi),
    • trong ví dụ trên.
      let range = new Range();
      66
  • let range = new Range();
    67 – tổ tiên chung gần nhất của tất cả các nút trong phạm vi,
    • trong ví dụ trên.

      Example: italic and bold

      11

phương pháp lựa chọn phạm vi

Có nhiều phương pháp thuận tiện để thao tác phạm vi

Chúng tôi đã thấy

Example: italic and bold

51 và

Example: italic and bold

52, đây là các phương pháp tương tự khác

Đặt phạm vi bắt đầu

  • Example: italic and bold

    71 bắt đầu lúc. vị trí

    Example: italic and bold

    9 trong

    Example: italic and bold

    7
  • Example: italic and bold

    74 bắt đầu lúc. ngay trước

    Example: italic and bold

    7
  • Example: italic and bold

    76 bắt đầu lúc. ngay sau

    Example: italic and bold

    7

Đặt phạm vi kết thúc (phương pháp tương tự)

  • Example: italic and bold

    78 đặt kết thúc tại. vị trí

    Example: italic and bold

    9 trong

    Example: italic and bold

    7
  • Example: italic and bold

    71 đặt kết thúc tại. ngay trước

    Example: italic and bold

    7
  • Example: italic and bold

    73 đặt kết thúc tại. ngay sau

    Example: italic and bold

    7

Về mặt kỹ thuật,

Example: italic and bold

55 có thể làm bất cứ điều gì, nhưng nhiều phương pháp hơn sẽ mang lại nhiều tiện ích hơn

Trong tất cả các phương thức này,

Example: italic and bold

7 có thể vừa là nút văn bản hoặc phần tử. đối với các nút văn bản,

Example: italic and bold

9 bỏ qua nhiều ký tự đó, trong khi đối với các nút phần tử, nhiều nút con

Thậm chí nhiều phương pháp hơn để tạo phạm vi

  • Phạm vi thiết lập

    Example: italic and bold

    78 để chọn toàn bộ

    Example: italic and bold

    7
  • Phạm vi thiết lập

    Example: italic and bold

    60 để chọn toàn bộ nội dung của

    Example: italic and bold

    7
  • Example: italic and bold

    62 nếu

    Example: italic and bold

    63 đặt end=start, nếu không thì đặt start=end, do đó thu gọn phạm vi
  • Example: italic and bold

    64 tạo một phạm vi mới có cùng điểm bắt đầu/kết thúc

Phương pháp chỉnh sửa phạm vi

Khi phạm vi được tạo, chúng ta có thể thao tác nội dung của nó bằng các phương thức này

  • Example: italic and bold

    65 – xóa nội dung phạm vi khỏi tài liệu
  • Example: italic and bold

    66 – xóa nội dung phạm vi khỏi tài liệu và trả về dưới dạng DocumentFragment
  • Example: italic and bold

    67 – sao chép nội dung phạm vi và trả về dưới dạng DocumentFragment
  • Example: italic and bold

    68 – chèn

    Example: italic and bold

    7 vào tài liệu ở đầu phạm vi
  • Example: italic and bold

    200 – bọc

    Example: italic and bold

    7 xung quanh nội dung phạm vi. Để điều này hoạt động, phạm vi phải chứa cả thẻ mở và thẻ đóng cho tất cả các phần tử bên trong nó. không có phạm vi một phần như

    Example: italic and bold

    202

Với những phương pháp này, về cơ bản chúng ta có thể làm bất cứ điều gì với các nút đã chọn

Đây là giá đỡ thử nghiệm để xem chúng hoạt động

let range = new Range();
6

Cũng tồn tại các phương pháp để so sánh các phạm vi, nhưng chúng hiếm khi được sử dụng. Khi bạn cần chúng, vui lòng tham khảo thông số kỹ thuật hoặc hướng dẫn sử dụng MDN

Lựa chọn

Example: italic and bold

1 là một đối tượng chung để quản lý phạm vi lựa chọn. Mặc dù, tạo một

Example: italic and bold

1 không có nghĩa là chúng ta thấy một lựa chọn trên màn hình

Chúng tôi có thể tạo các đối tượng

Example: italic and bold

1, chuyển chúng xung quanh – chúng không tự chọn bất kỳ thứ gì một cách trực quan

Việc lựa chọn tài liệu được đại diện bởi đối tượng

Example: italic and bold

2, có thể được lấy dưới dạng

Example: italic and bold

207 hoặc

Example: italic and bold

208. Một lựa chọn có thể bao gồm 0 hoặc nhiều phạm vi. Ít nhất, đặc tả API Lựa chọn nói như vậy. Tuy nhiên, trên thực tế, chỉ Firefox mới cho phép chọn nhiều phạm vi trong tài liệu bằng cách sử dụng Ctrl + click (Cmd +< . click for Mac).

Đây là ảnh chụp màn hình của vùng chọn có 3 phạm vi, được tạo trên Firefox

Đối với trong phạm vi nodejs

Các trình duyệt khác hỗ trợ tối đa 1 phạm vi. Như chúng ta sẽ thấy, một số phương thức của

Example: italic and bold

2 ngụ ý rằng có thể có nhiều phạm vi, nhưng một lần nữa, trong tất cả các trình duyệt ngoại trừ Firefox, chỉ có tối đa 1 phạm vi.

Đây là một bản trình diễn nhỏ hiển thị lựa chọn hiện tại (chọn thứ gì đó và nhấp) dưới dạng văn bản

cảnh báo (tài liệu. getSelection())

Thuộc tính lựa chọn

Như đã nói, về lý thuyết, một vùng chọn có thể chứa nhiều phạm vi. Chúng ta có thể lấy các đối tượng phạm vi này bằng phương thức

  • Example: italic and bold

    210 – lấy phạm vi thứ i, bắt đầu từ

    Example: italic and bold

    16. Trong tất cả các trình duyệt ngoại trừ Firefox, chỉ có

    Example: italic and bold

    16 được sử dụng

Ngoài ra, tồn tại các thuộc tính thường mang lại sự thuận tiện tốt hơn

Tương tự như một phạm vi, một đối tượng lựa chọn có phần đầu, được gọi là "neo" và phần cuối, được gọi là "tiêu điểm"

Các thuộc tính lựa chọn chính là

  • Example: italic and bold

    213 – nút bắt đầu lựa chọn,
  • Example: italic and bold

    214 – phần bù trong

    Example: italic and bold

    213 nơi bắt đầu lựa chọn,
  • Example: italic and bold

    216 – nút nơi lựa chọn kết thúc,
  • Example: italic and bold

    217 – phần bù trong

    Example: italic and bold

    216 khi lựa chọn kết thúc,
  • Example: italic and bold

    219 –
    let range = new Range();
    65 nếu lựa chọn không chọn gì (phạm vi trống) hoặc không tồn tại
  • Example: italic and bold

    221 – số phạm vi trong vùng chọn, tối đa

    Example: italic and bold

    17 trong tất cả các trình duyệt ngoại trừ Firefox

Lựa chọn kết thúc/bắt đầu so với Phạm vi

Có một sự khác biệt quan trọng của điểm neo/tiêu điểm lựa chọn so với điểm bắt đầu/kết thúc của

Example: italic and bold

1

Như chúng ta đã biết, đối tượng

Example: italic and bold

1 luôn có điểm bắt đầu trước điểm kết thúc

Đối với các lựa chọn, không phải lúc nào cũng vậy

Chọn thứ gì đó bằng chuột có thể được thực hiện theo cả hai hướng. “từ trái sang phải” hoặc “từ phải sang trái”

Nói cách khác, khi nút chuột được nhấn và sau đó nó di chuyển về phía trước trong tài liệu, thì phần cuối (tiêu điểm) của nó sẽ ở sau phần đầu (điểm neo)

E. g. nếu người dùng bắt đầu chọn bằng chuột và chuyển từ “Ví dụ” sang “in nghiêng”

Đối với trong phạm vi nodejs

…Nhưng cùng một lựa chọn có thể được thực hiện ngược lại. bắt đầu từ “in nghiêng” đến “Ví dụ” (hướng ngược), sau đó phần cuối của nó (tiêu điểm) sẽ ở trước phần bắt đầu (neo)

Đối với trong phạm vi nodejs

sự kiện tuyển chọn

Có các sự kiện để theo dõi lựa chọn

  • Example: italic and bold

    225 – khi một lựa chọn bắt đầu cụ thể trên phần tử

    Example: italic and bold

    226 (hoặc bên trong nó). Chẳng hạn, khi người dùng nhấn nút chuột vào nó và bắt đầu di chuyển con trỏ
    • Ngăn chặn hành động mặc định hủy bỏ lựa chọn bắt đầu. Vì vậy, bắt đầu lựa chọn từ phần tử này trở nên không thể, nhưng phần tử vẫn có thể chọn được. Khách truy cập chỉ cần bắt đầu lựa chọn từ nơi khác
  • Example: italic and bold

    227 – bất cứ khi nào lựa chọn thay đổi hoặc bắt đầu
    • Xin lưu ý. trình xử lý này chỉ có thể được đặt trên

      Example: italic and bold

      228, nó theo dõi tất cả các lựa chọn trong đó

Demo theo dõi lựa chọn

Đây là một bản demo nhỏ. Nó theo dõi lựa chọn hiện tại trên

Example: italic and bold

228 và hiển thị ranh giới của nó

Example: italic and bold

7

Bản trình diễn sao chép lựa chọn

Có hai cách để sao chép nội dung đã chọn

  1. Chúng ta có thể sử dụng

    Example: italic and bold

    230 để lấy nó dưới dạng văn bản
  2. Mặt khác, để sao chép toàn bộ DOM, e. g. nếu chúng tôi cần giữ định dạng, chúng tôi có thể lấy các phạm vi cơ bản với

    Example: italic and bold

    231. Ngược lại, một đối tượng

    Example: italic and bold

    1 có phương thức

    Example: italic and bold

    67 sao chép nội dung của nó và trả về dưới dạng đối tượng

    Example: italic and bold

    234, mà chúng ta có thể chèn vào nơi khác

Đây là bản demo sao chép nội dung đã chọn dưới dạng văn bản và dưới dạng các nút DOM

Example: italic and bold

7

phương pháp lựa chọn

Chúng ta có thể làm việc với vùng chọn bằng cách thêm/xóa phạm vi

  • Example: italic and bold

    210 – lấy phạm vi thứ i, bắt đầu từ

    Example: italic and bold

    16. Trong tất cả các trình duyệt ngoại trừ Firefox, chỉ có

    Example: italic and bold

    16 được sử dụng
  • Example: italic and bold

    238 – thêm

    Example: italic and bold

    239 vào lựa chọn. Tất cả các trình duyệt ngoại trừ Firefox bỏ qua cuộc gọi, nếu lựa chọn đã có một phạm vi liên quan
  • Example: italic and bold

    240 – loại bỏ

    Example: italic and bold

    239 khỏi lựa chọn
  • Example: italic and bold

    242 – xóa tất cả các phạm vi
  • Example: italic and bold

    243 – bí danh của

    Example: italic and bold

    244

Ngoài ra còn có các phương pháp tiện lợi để thao tác trực tiếp với phạm vi lựa chọn mà không cần các lệnh gọi trung gian

Example: italic and bold

1

  • Example: italic and bold

    246 – thay thế phạm vi đã chọn bằng một phạm vi mới bắt đầu và kết thúc tại

    Example: italic and bold

    7 đã cho, tại vị trí

    Example: italic and bold

    9
  • Example: italic and bold

    249 – bí danh của

    Example: italic and bold

    250
  • Example: italic and bold

    251 – thu gọn (thay thế bằng một phạm vi trống) để bắt đầu lựa chọn,
  • Example: italic and bold

    252 – sụp đổ đến cuối lựa chọn,
  • Example: italic and bold

    253 – di chuyển tiêu điểm của vùng chọn đến

    Example: italic and bold

    7 đã cho, vị trí

    Example: italic and bold

    9,
  • Example: italic and bold

    256 – thay thế phạm vi lựa chọn bằng bắt đầu nhất định

    Example: italic and bold

    257 và kết thúc

    Example: italic and bold

    258. Tất cả nội dung ở giữa chúng được chọn
  • Example: italic and bold

    259 – chọn tất cả con của

    Example: italic and bold

    7
  • Example: italic and bold

    261 – xóa nội dung đã chọn khỏi tài liệu
  • Example: italic and bold

    262 – kiểm tra xem lựa chọn có chứa

    Example: italic and bold

    7 hay không (một phần nếu đối số thứ hai là
    let range = new Range();
    65)

Đối với hầu hết các tác vụ, các phương thức này đều ổn, không cần truy cập đối tượng

Example: italic and bold

1 bên dưới

Ví dụ chọn toàn bộ nội dung của đoạn

Example: italic and bold

11

Example: italic and bold

6

Điều tương tự khi sử dụng phạm vi

Example: italic and bold

20

Để chọn thứ gì đó, trước tiên hãy xóa lựa chọn hiện tại

Nếu một lựa chọn tài liệu đã tồn tại, hãy làm trống nó trước với

Example: italic and bold

242. Và sau đó thêm phạm vi. Mặt khác, tất cả các trình duyệt ngoại trừ Firefox đều bỏ qua các phạm vi mới

Ngoại lệ là một số phương pháp lựa chọn, thay thế lựa chọn hiện có, chẳng hạn như

Example: italic and bold

268

Lựa chọn trong điều khiển biểu mẫu

Các phần tử biểu mẫu, chẳng hạn như

Example: italic and bold

269 và

Example: italic and bold

270 cung cấp API đặc biệt để lựa chọn, không có đối tượng

Example: italic and bold

2 hoặc

Example: italic and bold

1. Vì giá trị đầu vào là một văn bản thuần túy, không phải HTML, nên không cần các đối tượng như vậy, mọi thứ đơn giản hơn nhiều

Tính chất

  • Example: italic and bold

    273 – vị trí bắt đầu lựa chọn (có thể ghi),
  • Example: italic and bold

    274 – vị trí kết thúc lựa chọn (có thể ghi),
  • Example: italic and bold

    275 – hướng lựa chọn, một trong. “tiến”, “lùi” hoặc “không” (nếu e. g. được chọn bằng cách nhấp đúp chuột),

Sự kiện

  • Example: italic and bold

    276 – kích hoạt khi thứ gì đó được chọn

phương pháp

  • Example: italic and bold

    277 – chọn mọi thứ trong điều khiển văn bản (có thể là

    Example: italic and bold

    270 thay vì

    Example: italic and bold

    269),

  • Example: italic and bold

    280 – thay đổi lựa chọn để kéo dài từ vị trí

    Example: italic and bold

    281 đến

    Example: italic and bold

    282, theo hướng đã cho (tùy chọn)

  • Example: italic and bold

    283 – thay thế một dãy văn bản bằng văn bản mới

    Các đối số tùy chọn

    Example: italic and bold

    281 và

    Example: italic and bold

    282, nếu được cung cấp, hãy đặt phạm vi bắt đầu và kết thúc, nếu không thì lựa chọn của người dùng sẽ được sử dụng

    Đối số cuối cùng,

    Example: italic and bold

    286, xác định cách thiết lập lựa chọn sau khi văn bản được thay thế. Các giá trị có thể là

    • Example: italic and bold

      287 – văn bản mới chèn sẽ được chọn
    • Example: italic and bold

      288 – phạm vi lựa chọn thu gọn ngay trước văn bản được chèn (con trỏ sẽ ở ngay trước văn bản đó)
    • Example: italic and bold

      289 – phạm vi lựa chọn thu gọn ngay sau văn bản được chèn (con trỏ sẽ ở ngay sau nó)
    • Example: italic and bold

      290 – cố gắng duy trì lựa chọn. Đây là mặc định

Bây giờ hãy xem các phương pháp này hoạt động

Ví dụ. lựa chọn theo dõi

Ví dụ: mã này sử dụng sự kiện

Example: italic and bold

291 để theo dõi lựa chọn

Example: italic and bold

21

Xin lưu ý

  • Example: italic and bold

    291 kích hoạt khi thứ gì đó được chọn, nhưng không kích hoạt khi lựa chọn bị xóa
  • Theo thông số kỹ thuật, sự kiện

    Example: italic and bold

    227 không được kích hoạt cho các lựa chọn bên trong điều khiển biểu mẫu, vì nó không liên quan đến lựa chọn và phạm vi của

    Example: italic and bold

    228. Một số trình duyệt tạo ra nó, nhưng chúng ta không nên dựa vào nó

Ví dụ. di chuyển con trỏ

Chúng ta có thể thay đổi

Example: italic and bold

295 và

Example: italic and bold

296, điều này đặt vùng chọn

Một trường hợp cạnh quan trọng là khi

Example: italic and bold

295 và

Example: italic and bold

296 bằng nhau. Sau đó, nó chính xác là vị trí con trỏ. Hoặc, để viết lại, khi không có gì được chọn, lựa chọn được thu gọn tại vị trí con trỏ

Vì vậy, bằng cách đặt

Example: italic and bold

295 và

Example: italic and bold

296 thành cùng một giá trị, chúng tôi di chuyển con trỏ

Ví dụ

Example: italic and bold

22

Ví dụ. sửa đổi lựa chọn

Để sửa đổi nội dung của vùng chọn, chúng ta có thể sử dụng phương thức

Example: italic and bold

01. Tất nhiên, chúng ta có thể đọc

Example: italic and bold

02 và với kiến ​​thức về lựa chọn, thay đổi chuỗi con tương ứng của

Example: italic and bold

03, nhưng

Example: italic and bold

04 mạnh hơn và thường thuận tiện hơn

Đó là một phương pháp hơi phức tạp. Ở dạng một đối số đơn giản nhất, nó thay thế phạm vi người dùng đã chọn và xóa lựa chọn

Ví dụ: ở đây, lựa chọn của người dùng sẽ được bao bọc bởi

Example: italic and bold

05

Example: italic and bold

23

Với nhiều đối số hơn, chúng ta có thể đặt phạm vi

Example: italic and bold

281 và

Example: italic and bold

282

Trong ví dụ này, chúng tôi tìm thấy

Example: italic and bold

08 trong văn bản đầu vào, thay thế nó và giữ lựa chọn thay thế

Example: italic and bold

24

Ví dụ. chèn vào con trỏ

Nếu không có gì được chọn hoặc chúng tôi sử dụng

Example: italic and bold

281 và

Example: italic and bold

282 bằng nhau trong

Example: italic and bold

04, thì văn bản mới chỉ được chèn vào, không có gì bị xóa

Chúng tôi cũng có thể chèn một cái gì đó "tại con trỏ" bằng cách sử dụng

Example: italic and bold

04

Đây là nút chèn

Example: italic and bold

13 vào vị trí con trỏ và đặt con trỏ ngay sau nó. Nếu lựa chọn không trống, thì nó sẽ được thay thế (chúng ta có thể phát hiện ra nó bằng cách so sánh

Example: italic and bold

14 và thay vào đó làm một việc khác)

Example: italic and bold

25

Làm cho không thể chọn

Để làm cho một cái gì đó không thể chọn, có ba cách

  1. Sử dụng thuộc tính CSS

    Example: italic and bold

    15

    Example: italic and bold

    26

    Điều này không cho phép lựa chọn bắt đầu tại

    Example: italic and bold

    226. Nhưng người dùng có thể bắt đầu lựa chọn ở nơi khác và bao gồm

    Example: italic and bold

    226 vào đó

    Sau đó,

    Example: italic and bold

    226 sẽ trở thành một phần của

    Example: italic and bold

    208, vì vậy việc lựa chọn thực sự xảy ra, nhưng nội dung của nó thường bị bỏ qua trong quá trình sao chép-dán

  2. Ngăn hành động mặc định trong các sự kiện

    Example: italic and bold

    20 hoặc

    Example: italic and bold

    21

    Example: italic and bold

    27

    Điều này ngăn việc bắt đầu lựa chọn trên

    Example: italic and bold

    226, nhưng khách truy cập có thể bắt đầu lựa chọn đó ở một phần tử khác, sau đó mở rộng đến

    Example: italic and bold

    226

    Điều đó thuận tiện khi có một trình xử lý sự kiện khác trên cùng một hành động kích hoạt lựa chọn (e. g.

    Example: italic and bold

    21). Vì vậy, chúng tôi vô hiệu hóa lựa chọn để tránh xung đột, vẫn cho phép sao chép nội dung

    Example: italic and bold

    226

  3. Chúng tôi cũng có thể xóa lựa chọn post-factum sau khi nó xảy ra với

    Example: italic and bold

    26. Điều đó hiếm khi được sử dụng, vì điều này gây ra hiện tượng nhấp nháy không mong muốn khi lựa chọn xuất hiện-biến mất

Người giới thiệu

  • Thông số DOM. Phạm vi
  • API lựa chọn
  • thông số kỹ thuật HTML. API cho các lựa chọn kiểm soát văn bản

Tóm lược

Chúng tôi đã đề cập đến hai API khác nhau cho các lựa chọn

  1. Đối với tài liệu. đối tượng

    Example: italic and bold

    2 và

    Example: italic and bold

    1
  2. Cho

    Example: italic and bold

    269,

    Example: italic and bold

    270. các phương thức và thuộc tính bổ sung

API thứ hai rất đơn giản vì nó hoạt động với văn bản

Các công thức nấu ăn được sử dụng nhiều nhất có lẽ là

  1. Lấy lựa chọn

    Example: italic and bold

    28

  2. Đặt lựa chọn

    Example: italic and bold

    29

Và cuối cùng, về con trỏ. Vị trí con trỏ trong các thành phần có thể chỉnh sửa, như

Example: italic and bold

31 luôn ở đầu hoặc cuối vùng chọn. Chúng ta có thể sử dụng nó để lấy vị trí con trỏ hoặc di chuyển con trỏ bằng cách đặt

Example: italic and bold

32 và

Example: italic and bold

33

Công dụng của hàm range() trong để làm gì?

Hàm range() trả về một dãy số, bắt đầu từ 0 theo mặc định và tăng dần 1 (theo mặc định) và dừng trước một số đã chỉ định.

Làm cách nào để lặp một phạm vi trong js?

Một cách để lặp qua phạm vi ngày bằng JavaScript là sử dụng vòng lặp while . Chúng ta có thể tạo các biến cho ngày bắt đầu và ngày kết thúc. Sau đó, chúng tôi có thể tăng ngày bắt đầu cho đến khi đến ngày kết thúc. Chúng ta có các biến bắt đầu và kết thúc với ngày bắt đầu và ngày kết thúc tương ứng.

=> trong JS nghĩa là gì?

Đó là một tính năng mới được giới thiệu trong ES6 và được gọi là hàm mũi tên . Phần bên trái biểu thị đầu vào của một chức năng và phần bên phải là đầu ra của chức năng đó.

3 đối số cho hàm phạm vi là gì?

Hàm range() của Python nhận ba đối số. .
số bắt đầu (tùy chọn). Dãy số nguyên được trả về bắt đầu từ số nguyên này. .
số dừng. Dãy số nguyên mà range() trả về kết thúc trước số nguyên này. .
stepValue (tùy chọn). Một giá trị số nguyên cho biết sự khác biệt giữa mỗi số nguyên trong chuỗi