Table des matières
Objet Sélection L'objet
Attributs :
Méthode :
addRange(range)
Paramètres :
Exemple :
collapse(parentNode,offset)
collapseToEnd()
collapseToStart()
containsNode(aNode,aPartlyContained)
参数:
示例:
deleteFromDocument()
extend(node,offset)
getRangeAt(index)
modify(alter,direction,granularity)
removeAllRanges()
removeRange(range)
selectAllChildren(parentNode)
setBaseAndExtent(anchorNode,anchorOffset,focusNode,focusOffset)
示例
toString()
Range 对象
属性:
方法:
cloneContents()
cloneRange()
collapse(toStart)
compareBoundaryPoints(how, sourceRange)
返回值
comparePoint(referenceNode,offset)
createContextualFragment(tagString)
deleteContents()
extractContents()
getBoundingClientRect()
getClientRects()
insertNode(newNode)
intersectsNode(referenceNode)
isPointInRange(referenceNode,offset)
selectNode(referenceNode)
selectNodeContents(referenceNode)
setEnd(endNode,endOffset)
setEndAfter(referenceNode)
setEndBefore(referenceNode)
setStart(startNode,startOffset)
setStartAfter(referenceNode)
setStartBefore(referenceNode)
surroundContents(newParent)
选区中的多个区域
修改选区样式
Maison interface Web js tutoriel Une brève discussion sur la façon d'utiliser le curseur et la sélection en JavaScript ?

Une brève discussion sur la façon d'utiliser le curseur et la sélection en JavaScript ?

Jun 30, 2021 am 10:46 AM
javascript 光标

Comment faire fonctionner le curseur et la sélection en JavaScript ? L'article suivant vous présentera l'objet Selection et l'objet Range, et vous expliquera comment utiliser ces deux objets pour faire fonctionner le curseur et la sélection.

Une brève discussion sur la façon d'utiliser le curseur et la sélection en JavaScript ?

Lorsque vous devez utiliser le curseur et la sélection dans certains scénarios commerciaux, tels que la mise en surbrillance du texte, la modification des entrées, etc., vous pouvez utiliser l'objet Selection fourni par le navigateur et les objets Range pour faire fonctionner le curseur et la sélection.

Objet Sélection L'objet

Selection représente la sélection sélectionnée par l'utilisateur ou la position actuelle du curseur, qui peut s'étendre sur plusieurs éléments.

//获取 Selection 对象
window.getSelection();
Copier après la connexion

L'utilisateur peut sélectionner le texte de gauche à droite (même sens que le document) ou de droite à gauche (sens opposé au sens du document).

anchor (ancre) : fait référence à l'endroit où l'utilisateur commence la sélection.
focus (Focus) : fait référence à l'endroit où l'utilisateur termine sa sélection.

Si vous utilisez la souris pour sélectionner du texte, anchor fait référence à l'endroit où vous appuyez sur le bouton de la souris, et focus fait référence à l'endroit où vous relâchez le bouton de la souris. Les notions de anchor et focus ne doivent pas être confondues avec les positions de début et de fin de la sélection, car anchor peut être devant focus ou derrière focus, selon la souris lorsque vous sélectionnez le texte La direction du mouvement, c'est-à-dire l'endroit où le bouton de la souris est enfoncé et relâché.

Comme indiqué ci-dessous :

Une brève discussion sur la façon dutiliser le curseur et la sélection en JavaScript ?

Une brève discussion sur la façon dutiliser le curseur et la sélection en JavaScript ?

Attributs :

  • anchorNode : Le nœud où se trouve le point d'ancrage (anchor).
  • anchorOffset :

    • Si anchorNode est un nœud de texte ou un nœud d'annotation, renvoie le point d'ancrage (anchor) au nœud . Le nombre de caractères dans un mot.
    • Si anchorNode est un nœud d'élément, renvoie le nombre total de nœuds frères avant le point d'ancrage (anchor).
  • focusNode : Le nœud où se trouve le focus (focus).
  • focusOffset :

    • Si focusNode est un nœud de texte ou un nœud d'annotation, renvoyez le focus (focus) au nœud du nœud. nombre de caractères dans un mot.
    • Si focusNode est un nœud d'élément, renvoie le nombre total de nœuds frères avant le focus (focus).
  • isCollapsed : La valeur Boolean indiquant si les positions de début et de fin de la sélection coïncident. Si c'est true, on peut considérer que non. le contenu est actuellement sélectionné.
  • rangeCount : Le nombre d'objets contenus dans la sélection Range.
  • type : décrit le type de la sélection actuelle, avec les trois valeurs suivantes :

    • Aucun : Il y a actuellement aucune sélection.
    • Caret : Seulement cliqué, mais non sélectionné, la sélection est réduite (c'est-à-dire que le curseur est entre les caractères, non sélectionné).
    • Plage : Une plage est sélectionnée.

Remarque :

Tous les attributs ci-dessus sont des attributs en lecture seule.

Méthode :

  • addRange(range)

    Ajoute une plage à la sélection (Selection objet) ( Range objet).

    Paramètres :

    range : Un objet région

    Exemple :

    <p id="text">文本</p>
    Copier après la connexion
    rrree
  • collapse(parentNode,offset)

    Réduire la sélection actuelle en un point. Le document ne sera pas modifié.

    Paramètres :

    parentNode : Le nœud cible où se trouve le curseur
    offset : Facultatif, le décalage au sein du nœud cible

    Exemple :

    //添加一个选区
    var text = document.querySelector("#text");
    var selObj = window.getSelection();
    var rangeObj = document.createRange();
    rangeObj.selectNode(text);
    selObj.addRange(rangeObj);
    Copier après la connexion
    rrree
  • collapseToEnd()

    Annulez la sélection actuelle et positionnez le curseur à la fin de la sélection d'origine.

    Paramètres :

    Aucun

    Exemple :

    <div contenteditable="true" id="text">文本</div>
    Copier après la connexion
  • collapseToStart()

    Annuler la sélection actuelle et Positionnez le curseur au début de la sélection d'origine.

    Paramètres :

    Aucun

    Exemple :

    //收起选区到一个点,光标落在一个可编辑元素上
    var text = document.querySelector("#text")
    window.getSelection().collapse(text,0);
    Copier après la connexion
  • containsNode(aNode,aPartlyContained)

    Spécification du jugement Si le nœud est inclus dans l'objet Selection (c'est-à-dire s'il est sélectionné).

    参数:

    aNode: 用于判断是否包含在 Selection 对象中的节点。
    aPartlyContained
    当此参数为 true 时,Selection 对象包含 aNode 的一部分或全部时,containsNode() 方法返回true
    当此参数为 false (默认值)时,只有 Selection 对象完全包含 aNode 时,containsNode() 方法才返回 true

    示例:

    <div id="text">文本</div>
    Copier après la connexion
    Copier après la connexion
    var text = document.querySelector("#text");
    var selObj = window.getSelection();
    var contains = selObj.containsNode(text);
    Copier après la connexion
  • deleteFromDocument()

    DOM 中删除选中的文档片段。

    参数:

    示例:

    var selObj = window.getSelection();
    selObj.deleteFromDocument();
    Copier après la connexion
  • extend(node,offset)

    移动选区的焦点(focus)到指定的点。选区的锚点(anchor)不会移动。选区将从锚点(anchor)开始到新的焦点(focus),不管方向。

    参数:

    node: 焦点(focus)会被移至此节点内。
    offset: 可选,默认值为0,焦点(focus)会被移至 node 内的偏移位置。

    示例:

    <div id="text">文本</div>
    Copier après la connexion
    Copier après la connexion
    var text = document.querySelector("#text");
    var selObj = window.getSelection();
    selObj.extend(text);
    Copier après la connexion
  • getRangeAt(index)

    返回一个当前选区包含的 Range 对象。

    参数:

    index: 该参数指定 Range 对象的索引。如果该数值大于或等于 rangeCount ,将会报错。

    示例:

    //获取一个 Selection 对象
    var selObj = window.getSelection();
    //获取一个 Range 对象
    var rangeObj  = selObj.getRangeAt(0);
    Copier après la connexion
  • modify(alter,direction,granularity)

    通过文本命令来更改当前选区或光标位置。

    参数:

    alter:改变类型,传入 move 来移动光标位置,或者 extend 来扩展当前选区。
    direction:调整选区的方向。你可以传入 forwardbackward 来根据选区内容的语言书写方向来调整。或者使用 leftright 来指明一个明确的调整方向。
    granularity:调整的距离颗粒度。可选值有 characterwordsentencelineparagraphlineboundarysentenceboundaryparagraphboundarydocumentboundary

    示例:

    var selection = window.getSelection();
    selection.modify("extend", "forward", "word");
    Copier après la connexion
  • removeAllRanges()

    会从当前 Selection 对象中移除所有的 Range 对象,取消所有的选择。

    参数:

    示例:

    var selObj = window.getSelection();
    selObj.removeAllRanges();
    Copier après la connexion
  • removeRange(range)

    将一个 Range 对象从选区中移除。

    参数:

    range: 一个将从选区中移除的 Range 对象。

    示例:

    var selObj = window.getSelection();
    var rangeObj = selObj.getRangeAt(0)
    selObj.removeRange(rangeObj);
    Copier après la connexion
  • selectAllChildren(parentNode)

    把指定元素的所有子元素设置为选区(该元素本身除外),并取消之前的选区。

    参数:

    parentNode: 指定元素

    示例:

    <div id="selectAll">
      <div>文本1</div>
      <div>文本2</div>
    </div>
    Copier après la connexion
    var selectAll = document.querySelector("#selectAll");
    var selObj = window.getSelection();
    selObj.selectAllChildren(selectAll);
    Copier après la connexion
  • setBaseAndExtent(anchorNode,anchorOffset,focusNode,focusOffset)

    选中两个特定 DOM 节点之间的内容。

    参数:

    anchorNode: 选中内容的开始节点
    anchorOffset:选区起始位置在 anchorNode 内的偏移量。
    如果 anchorNode 是文本节点,表示选区起始位置在该节点第几个字符位置。
    如果 anchorNode 是元素节点,表示选区起始位置在该节点内第几个子节点的位置。
    focusNode: 选中内容的结束节点
    focusOffset: 选区终止位置在 focusNode 内的偏移量。
    如果 focusNode 是文本节点,表示选区终止位置在该节点第几个字符位置。
    如果 focusNode 是元素节点,表示选区终止位置在该节点内第几个子节点的位置。

示例:

<div id="start"></div>
<div id="end"></div>
Copier après la connexion
var start = document.querySelector("#start");
var end = document.querySelector("#end");
var selObj = window.getSelection();
selObj.setBaseAndExtent(start,0,end,0);
Copier après la connexion
  • toString()

    返回代表当前 Selection 对象的字符串,例如当前选择的文本。

    参数:

    示例:

    var selObj = window.getSelection();
    selObj.toString();
    Copier après la connexion

Range 对象

Range 对象表示被选中的文档片段。一个 Range 对象可能包含整个元素节点,也可能包含元素节点的一部分,例如文本节点的一部分文字。用户通常只能选择一个 Range 对象,但是有的时候用户也有可能选择多个 Range 对象(只有火狐浏览器可以选择多个 Range 对象)。

可以用 Document 对象的 Document.createRange 方法创建 Range,也可以用 Selection 对象的 getRangeAt 方法获取 Range。另外,还可以通过 Document 对象的构造函数 Range() 来得到 Range

属性:

  • collapsed: 返回一个表示起始位置和终止位置是否相同的 Boolean 值。
  • commonAncestorContainer: 返回包含 startContainerendContainer 的最深一级的节点。
  • endContainer: 返回包含 Range 终点位置的节点。
  • endOffset:

    • 如果 endContainer 是文本节点、注释节点,返回该节点第一个字到选区边界的字符个数(即被选中的字符个数)。
    • 如果 endContainer 是元素节点,返回选区终止位置之后第一个节点之前的同级节点总数。
  • startContainer: 返回包含 Range 开始位置的节点。
  • startOffset:

    • 如果 startContainer 是文本节点、注释节点,返回该节点第一个字到选区边界的字符个数(即未被选中的字符个数)。
    • 如果 startContainer 是元素节点,返回选区起始位置第一个节点之前的同级节点总数。

注意:

以上所有属性都是只读属性

方法:

  • cloneContents()

    返回一个文档片段,它是 Range 对象中所有节点的副本。

    参数:

    示例:

    // 在文档中插入选中元素
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    documentFragment = rangeObj.cloneContents();
    document.body.appendChild(documentFragment);
    Copier après la connexion
  • cloneRange()

    返回一个 Range 对象的副本(两个对象各自做出改变,都不会影响另一方)。

    参数:

    示例:

    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    clone = rangeObj.cloneRange();
    Copier après la connexion
  • collapse(toStart)

    向开始或结束方向折叠 Range

    参数:

    toStart: 可选,Boolean 值(默认值 false), true 折叠到 Range 的开始方向,false 折叠到结束方向。

    示例:

    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    rangeObj.collapse(true);
    Copier après la connexion
  • compareBoundaryPoints(how, sourceRange)

    比较两个 Range 对象的起始位置节点或结束位置节点。

    参数:

    how 表示比较方法的常量:

      Range.END_TO_END :比较 sourceRange 对象的结束位置节点和原 Range 对象的结束位置节点。
      Range.END_TO_START :比较 sourceRange 对象的结束位置节点和原 Range 对象的起始位置节点。
      Range.START_TO_END :比较 sourceRange 对象的起始位置节点和原 Range 对象的结束位置节点。
      Range.START_TO_START :比较 sourceRange 对象的起始位置节点和原 Range 对象的起始位置节点。
    Copier après la connexion

    sourceRange: 一个与原 Range 对象比较的 Range 对象。

    返回值

    compare 表示一个数字:

      -1 :原 Range 对象的比较节点在 sourceRange 对象的比较节点之前  
      0 :原 Range 对象的比较节点在 sourceRange 对象的比较节点的相同位置   
      1 :原 Range 对象的比较节点在 sourceRange 对象的比较节点之后
    Copier après la connexion

    示例:

    <div id="range">range</div>
    <div id="sourceRange">sourceRange</div>
    Copier après la connexion
    var range, sourceRange, compare;
    range = document.createRange();
    range.selectNode(document.querySelector("#rang"));
    sourceRange = document.createRange();
    sourceRange.selectNode(document.querySelector("#sourceRange"));
    compare = range.compareBoundaryPoints(Range.START_TO_END, sourceRange);
    Copier après la connexion
  • comparePoint(referenceNode,offset)

    判断指定节点是在 Range 对象的之前、相同还是之后位置。

    参数:

    referenceNode: 与 Range 对象进行比较的节点。
    offset: 在 referenceNode 内的偏移量。
    如果 referenceNode 是文本节点、注释节点,offset 表示在该节点中字符的偏移位置。
    如果 referenceNode 是元素节点,offset 表示在该节点中子元素的偏移位置。

    示例:

    <div id="range">range</div>
    <div id="referenceNode">referenceNode</div>
    Copier après la connexion
    range = document.createRange();
    range.selectNode(document.querySelector("#range"));
    returnValue = range.comparePoint(document.querySelector("#referenceNode"), 0);
    Copier après la connexion
  • createContextualFragment(tagString)

    HTML 字符串转换为文档片段

    参数:

    tagString: 要转换的 HTML 字符串。

    示例:

    var tagString = "<div>node</div>";
    var range = document.createRange();
    var documentFragment = range.createContextualFragment(tagString);
    document.body.appendChild(documentFragment);
    Copier après la connexion
  • deleteContents()

    DOM 中删除选中的文档片段,不返回删除的文档片段。

    参数:

    示例:

    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    rangeObj.deleteContents();
    Copier après la connexion
  • extractContents()

    DOM 中删除选中的文档片段,返回删除的文档片段(不保留 DOM 事件)。

    参数:

    示例:

    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    rangeObj.extractContents();
    Copier après la connexion
  • getBoundingClientRect()

    返回一个 DOMRect 对象,表示整个选区的位置信息。

    参数:

    示例:

    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    var boundingRect = rangeObj.getBoundingClientRect();
    Copier après la connexion
  • getClientRects()

    返回一个选区内所有元素调用 Element.getClientRects() 方法所得结果的列表。表示选区在屏幕上所占的区域。

    参数:

    示例:

    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    var boundingRect = rangeObj.getClientRects();
    Copier après la connexion
  • insertNode(newNode)

    在选区开始处插入一个节点。

    参数:

    newNode: 需要插入的节点

    示例:

    <div id="insertNode">insertNode</div>
    <div id="node">node</div>
    Copier après la connexion
    range = document.createRange();
    newNode = document.querySelector("#node");
    range.selectNode(document.querySelector("#insertNode"));
    range.insertNode(newNode);
    Copier après la connexion
  • intersectsNode(referenceNode)

    返回一个 Boolean 值,判断指定节点和 Range 对象是否相交。

    参数:

    referenceNode:需要比较的节点

    示例:

    <div id="referenceNode">referenceNode</div>
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    referenceNode = document.querySelector("#referenceNode");
    rangeObj.intersectsNode(referenceNode);
    Copier après la connexion
  • isPointInRange(referenceNode,offset)

    返回一个 Boolean 值,判断指定节点是否在 Range 对象内。

    参数:

    referenceNode:指定节点
    offset:在 referenceNode 内的偏移量。
    如果 referenceNode 是文本节点,offset 表示在该节点中字符的偏移位置。
    如果 referenceNode 是元素节点,offset 表示在该节点中子元素的偏移位置。

    示例:

    <div id="referenceNode">referenceNode</div>
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    referenceNode = document.querySelector("#referenceNode");
    rangeObj.isPointInRange(referenceNode,0);
    Copier après la connexion
  • selectNode(referenceNode)

    将指定节点包含在 Range 对象内。

    参数:

    referenceNode:指定节点

    示例:

    <div id="referenceNode">referenceNode</div>
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    referenceNode = document.querySelector("#referenceNode");
    rangeObj.selectNode(referenceNode);
    Copier après la connexion
  • selectNodeContents(referenceNode)

    将指定节点的内容包含在 Range 对象内。

    参数:

    referenceNode:指定节点

    示例:

    <div id="referenceNode">referenceNode</div>
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    referenceNode = document.querySelector("#referenceNode");
    rangeObj.selectNodeContents(referenceNode);
    Copier après la connexion
  • setEnd(endNode,endOffset)

    设置选区的终止位置。

    参数:

    endNode:终止位置所在的节点
    endOffset:在 endNode 内的偏移量。
    如果 endNode 是文本节点、注释节点,endOffset 表示在该节点中字符的偏移位置。
    如果 endNode 是元素节点,endOffset 表示在该节点中子元素的偏移位置。

    示例:

    <div id="endNode">endNode</div>
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    var endNode = document.querySelector("#endNode");
    rangeObj.setEnd(endNode,0)
    Copier après la connexion
  • setEndAfter(referenceNode)

    设置选区的结束位置在指定节点之后。

    参数:

    referenceNode:指定节点

    示例:

    <div id="referenceNode">referenceNode</div>
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    var referenceNode = document.querySelector("#referenceNode");
    rangeObj.setEndAfter(referenceNode)
    Copier après la connexion
  • setEndBefore(referenceNode)

    设置选区的结束位置在指定节点之前。

    参数:

    referenceNode:指定节点

    示例:

    <div id="referenceNode">referenceNode</div>
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    var referenceNode = document.querySelector("#referenceNode");
    rangeObj.setEndBefore(referenceNode)
    Copier après la connexion
  • setStart(startNode,startOffset)

    设置选区的起始位置。

    参数:

    startNode:起始位置所在的节点
    startOffset:在 startNode 内的偏移量。
    如果 startNode 是文本节点、注释节点,startOffset 表示在该节点中字符的偏移位置。
    如果 startNode 是元素节点,startOffset 表示在该节点中子元素的偏移位置。

    示例:

    <p id="startNode">startNode</p>
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    startNode = document.querySelector("#startNode");
    rangeObj.setStart(startNode,0)
    Copier après la connexion
  • setStartAfter(referenceNode)

    设置选区的起始位置在指定节点之后。

    参数:

    referenceNode:指定节点

    示例:

    <div id="startNode">startNode</div>
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    referenceNode = document.querySelector("#referenceNode");
    rangeObj.setStartAfter(referenceNode)
    Copier après la connexion
  • setStartBefore(referenceNode)

    设置选区的起始位置在指定节点之前。

    参数:

    referenceNode:指定节点

    示例:

    <div id="referenceNode">referenceNode</div>
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    referenceNode = document.querySelector("#referenceNode");
    rangeObj.setStartBefore(referenceNode)
    Copier après la connexion
  • surroundContents(newParent)

    把指定节点插入选区的起始位置,然后把指定节点的内容替换为选区的内容。

    参数:

    newParent:指定节点

    示例:

    <div id="newParent">newParent</div>
    Copier après la connexion
    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    newParent = document.querySelector("#newParent");
    rangeObj.surroundContents(newParent)
    Copier après la connexion
  • toString()

    返回代表当前 Range 对象的字符串,例如当前选择的文本。

    参数:

    示例:

    var selObj = window.getSelection();
    var rangeObj  = selObj.getRangeAt(0);
    var rangeStr = rangeObj.toString();
    Copier après la connexion

选区中的多个区域

一个 Selection 对象表示用户选择的区域(Range 对象)的集合,通常它只包含一个区域,访问方式如下:

//获取一个 Selection 对象
var selObj = window.getSelection();
//获取一个 Range 对象
var rangeObj  = selObj.getRangeAt(0);
Copier après la connexion

只有火狐浏览器实现了多个区域,如下图所示:

Une brève discussion sur la façon dutiliser le curseur et la sélection en JavaScript ?

修改选区样式

使用 ::selection 选择器可以匹配被选中的部分。  
目前只有一小部分 CSS 属性可以用于 ::selection 选择器:

  • color
  • background-color
  • text-shadow

示例

Une brève discussion sur la façon dutiliser le curseur et la sélection en JavaScript ?

示例地址:https://www.kkkk1000.com/images/SelectionRange/selection.html

更多编程相关知识,请访问:编程视频!!

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment mettre en œuvre un système de reconnaissance vocale en ligne à l'aide de WebSocket et JavaScript Comment mettre en œuvre un système de reconnaissance vocale en ligne à l'aide de WebSocket et JavaScript Dec 17, 2023 pm 02:54 PM

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de reconnaissance vocale en ligne Introduction : Avec le développement continu de la technologie, la technologie de reconnaissance vocale est devenue une partie importante du domaine de l'intelligence artificielle. Le système de reconnaissance vocale en ligne basé sur WebSocket et JavaScript présente les caractéristiques d'une faible latence, d'un temps réel et d'une multiplateforme, et est devenu une solution largement utilisée. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de reconnaissance vocale en ligne.

WebSocket et JavaScript : technologies clés pour mettre en œuvre des systèmes de surveillance en temps réel WebSocket et JavaScript : technologies clés pour mettre en œuvre des systèmes de surveillance en temps réel Dec 17, 2023 pm 05:30 PM

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en œuvre en détail. 1. Technologie WebSocket

Comment utiliser JavaScript et WebSocket pour mettre en œuvre un système de commande en ligne en temps réel Comment utiliser JavaScript et WebSocket pour mettre en œuvre un système de commande en ligne en temps réel Dec 17, 2023 pm 12:09 PM

Introduction à l'utilisation de JavaScript et de WebSocket pour mettre en œuvre un système de commande en ligne en temps réel : avec la popularité d'Internet et les progrès de la technologie, de plus en plus de restaurants ont commencé à proposer des services de commande en ligne. Afin de mettre en œuvre un système de commande en ligne en temps réel, nous pouvons utiliser les technologies JavaScript et WebSocket. WebSocket est un protocole de communication full-duplex basé sur le protocole TCP, qui peut réaliser une communication bidirectionnelle en temps réel entre le client et le serveur. Dans le système de commande en ligne en temps réel, lorsque l'utilisateur sélectionne des plats et passe une commande

Comment mettre en œuvre un système de réservation en ligne à l'aide de WebSocket et JavaScript Comment mettre en œuvre un système de réservation en ligne à l'aide de WebSocket et JavaScript Dec 17, 2023 am 09:39 AM

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de réservation en ligne. À l'ère numérique d'aujourd'hui, de plus en plus d'entreprises et de services doivent fournir des fonctions de réservation en ligne. Il est crucial de mettre en place un système de réservation en ligne efficace et en temps réel. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de réservation en ligne et fournit des exemples de code spécifiques. 1. Qu'est-ce que WebSocket ? WebSocket est une méthode full-duplex sur une seule connexion TCP.

Comment résoudre le problème de l'apparition d'un écran et d'un curseur noirs au démarrage de Windows 7 Comment résoudre le problème de l'apparition d'un écran et d'un curseur noirs au démarrage de Windows 7 Dec 30, 2023 pm 10:25 PM

Le système Windows 7 a actuellement arrêté la mise à jour, donc s'il y a un problème, vous ne pouvez le résoudre que vous-même. Comme le montre l'image ci-dessous, il existe de nombreuses situations dans lesquelles le curseur devient noir après le démarrage de l'ordinateur et vous devez résoudre les problèmes un par un. Si vous ne voulez pas passer du temps à résoudre les problèmes, vous pouvez simplement réinstaller le système. Que faire s'il n'y a qu'un écran noir avec un curseur au démarrage de Windows 7 ? La première solution : Redémarrez l'ordinateur, et maintenez immédiatement la touche "F8" du clavier après le redémarrage. Sélectionnez ensuite « Dernière bonne configuration connue » dans le menu système avancé. La deuxième solution : appuyez sur la touche de raccourci "CTRL+SHIFT+ESC" pour voir si le gestionnaire de tâches peut être affiché. Si tel est le cas, cliquez avec le bouton droit pour terminer Explorer.exe dans le processus, puis créez une nouvelle exécution de Explorer.exe. essayer.

JavaScript et WebSocket : créer un système efficace de prévisions météorologiques en temps réel JavaScript et WebSocket : créer un système efficace de prévisions météorologiques en temps réel Dec 17, 2023 pm 05:13 PM

JavaScript et WebSocket : Construire un système efficace de prévisions météorologiques en temps réel Introduction : Aujourd'hui, la précision des prévisions météorologiques revêt une grande importance pour la vie quotidienne et la prise de décision. À mesure que la technologie évolue, nous pouvons fournir des prévisions météorologiques plus précises et plus fiables en obtenant des données météorologiques en temps réel. Dans cet article, nous apprendrons comment utiliser la technologie JavaScript et WebSocket pour créer un système efficace de prévisions météorologiques en temps réel. Cet article démontrera le processus de mise en œuvre à travers des exemples de code spécifiques. Nous

Tutoriel JavaScript simple : Comment obtenir le code d'état HTTP Tutoriel JavaScript simple : Comment obtenir le code d'état HTTP Jan 05, 2024 pm 06:08 PM

Tutoriel JavaScript : Comment obtenir le code d'état HTTP, des exemples de code spécifiques sont requis Préface : Dans le développement Web, l'interaction des données avec le serveur est souvent impliquée. Lors de la communication avec le serveur, nous devons souvent obtenir le code d'état HTTP renvoyé pour déterminer si l'opération a réussi et effectuer le traitement correspondant en fonction de différents codes d'état. Cet article vous apprendra comment utiliser JavaScript pour obtenir des codes d'état HTTP et fournira quelques exemples de codes pratiques. Utilisation de XMLHttpRequest

Comment utiliser insertBefore en javascript Comment utiliser insertBefore en javascript Nov 24, 2023 am 11:56 AM

Utilisation : En JavaScript, la méthode insertBefore() est utilisée pour insérer un nouveau nœud dans l'arborescence DOM. Cette méthode nécessite deux paramètres : le nouveau nœud à insérer et le nœud de référence (c'est-à-dire le nœud où le nouveau nœud sera inséré).

See all articles