【问题标题】:JavaScript Function to change HTML not working更改 HTML 的 JavaScript 函数不起作用
【发布时间】:2020-03-03 04:40:29
【问题描述】:

我有一个任务要执行以下操作:将 id = "image" 的 div 的文本更改为预览图像的替代文本。

我试过这个:

function upDate(previewPic){
    document.getElementById("image").innerHTML=element.alt;
}

这是我的 div 的 HTML 代码:

<img class = "preview" alt = "Styling with a Bandana" src = "img.jpg" onmouseover = "upDate(this)">

这对我不起作用,我做错了什么?

【问题讨论】:

  • 您希望element 在该功能中发挥什么作用?
  • 你的标签 img 没有 id 'image'
  • 对不起,我要更改的 div 是:
    将鼠标悬停在下面的图像上以显示在此处。
  • 当我将鼠标悬停在图像上时,我希望 div 中的文字更改为图像的替代文本。我没有成功!

标签: javascript function innerhtml


【解决方案1】:

这应该可以,你必须先获取属性值才能设置它

function upDate(previewPic){
    var x = document.getElementById("image").getAttribute('alt')
    document.getElementById("image").innerHTML= x;
}

【讨论】:

    【解决方案2】:

    你可以试试这个

     <img class = "preview" alt = "Styling with a Bandana" src = "img.jpg" onmouseover = "upDate(this);">
    <div id="image">
    
    </div><!--  -->
    
    <script>
    function upDate(previewPic){
        document.getElementById("image").innerHTML=previewPic.alt;
    }</script>
    

    【讨论】:

    • 这成功了!谢谢!你能解释一下为什么让我下次知道吗?
    • 这里你使用 element.alt 而不是 previewPic.alt 请检查函数传递的参数和使用的参数
    【解决方案3】:

    你可以试试这个代码

      function upDate(previewPic){
       var image = document.getElementById("YourimgId");
       document.getElementById("image").innerHTML= image.getAttribute("alt");
    }
    

    【讨论】:

      【解决方案4】:

      我认为你没有定义 Image 标签的 id 参考:https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_element_innerhtml 此外,alter 消息还有另一个 div 标签。这对清晰的输出更好

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-03-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-06-16
        • 1970-01-01
        • 1970-01-01
        • 2014-04-09
        相关资源
        最近更新 更多