Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我单击按钮时getElementById给我null?_Javascript_Button_Getelementbyid - Fatal编程技术网

Javascript 为什么我单击按钮时getElementById给我null?

Javascript 为什么我单击按钮时getElementById给我null?,javascript,button,getelementbyid,Javascript,Button,Getelementbyid,当我得到控制台时,我无法理解: TypeError:boton为空 我已经看过文档了,但是我仍然不明白为什么按钮是空的 所需的操作是单击按钮,如果我选择了文本,它将粘贴到控制台中 我刚收到错误信息 这是我的两个文件的确切内容:index.html和JS文件 HTML 这是因为您的脚本是在创建html之前执行的,您需要在下面添加此脚本,这是因为您的脚本是在创建html之前执行的,您需要将此脚本添加到您的下面,在boton元素完成加载之前调用脚本,这会导致空值,因为按钮尚不存在 您只需将更改为,添加

当我得到控制台时,我无法理解:

TypeError:boton为空

我已经看过文档了,但是我仍然不明白为什么按钮是空的

所需的操作是单击按钮,如果我选择了文本,它将粘贴到控制台中

我刚收到错误信息

这是我的两个文件的确切内容:index.html和JS文件

HTML
这是因为您的脚本是在创建html之前执行的,您需要在

下面添加此脚本,这是因为您的脚本是在创建html之前执行的,您需要将此脚本添加到您的

下面,在boton元素完成加载之前调用脚本,这会导致空值,因为按钮尚不存在


您只需将
更改为
,添加
延迟
属性,告知浏览器延迟执行,直到页面加载完成。

您在boton元素加载完成之前调用脚本,这会导致空值,因为按钮还不存在


您只需将
更改为
,添加
defer
属性,告知浏览器延迟执行,直到页面加载完成。

变量textoCopiado值来自我认为选定的文本!在点击按钮之前,尝试在页面上选择一些文本。变量textoCopiado值我认为来自所选文本!在点击按钮之前,试着在页面上选择一些文本,看看菜鸟的错误和如此清晰的解释。谢谢是的!非常普遍。很高兴你解决了这个问题。这样的新手错误和如此清晰的解释。谢谢是的!非常普遍。很高兴你处理好了。
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <script src="js.js" type="text/javascript"></script>

</head>
<body>

  <style>

  </style>

  <button id="resaltador">Resaltar</button>

<div class="card" style="width: 35rem;">
    <div class="card-body">
      <h5 class="card-title" id="card-title">Card title</h5>
      <h6 class="card-subtitle mb-2 text-muted">Card subtitle</h6>
      <p class="card-text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut lorem elit, porta eget imperdiet eu, aliquam in nisi. Vestibulum egestas finibus diam sit amet suscipit. Aenean faucibus eros magna, aliquam fermentum mi convallis non.</p>
    </div>
  </div>
</body>
</html>
function seleccionarTexto() {
    //copy the selected text on a mouseup
    var textoCopiado
    document.addEventListener('mouseup', (e)=> {
        if(window.getSelection().toString().length > 0) {
            textoCopiado = window.getSelection().toString()    
        }
    })
        
    //if we click the button
    var boton = document.getElementById('resaltador')
    boton.addEventListener('click', (e)=> console.log(textoCopiado) )


}
seleccionarTexto()