标签: innerhtml

Javascript删除空格时不应该?

我有一个HTML文件,其代码类似于以下内容.

<table>
    <tr>
    <td id="MyCell">Hello  World</td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

我正在使用如下的javascript来获取价值

document.getElementById(cell2.Element.id).innerText
Run Code Online (Sandbox Code Playgroud)

这将返回文本"Hello World",hello和world之间只有1个空格.我必须保留相同数量的空格,有什么办法可以做到吗?

我尝试过使用innerHTML,outerHTML和类似项目,但我没有运气.

javascript whitespace dom innerhtml

6
推荐指数
2
解决办法
7459
查看次数

问题使用Ext的update()而不是dom.innerHTML

我有一个关于使用Extjs的update()方法的性能,可靠性和最佳实践方法的问题,而不是直接更新Ext元素的dom的innerHTML.

考虑两个陈述:

Ext.fly('element-id').dom.innerHTML = 'Welcome, Dude!';
Run Code Online (Sandbox Code Playgroud)

Ext.fly('element.id').update('Welcome, Dude!', false);
Run Code Online (Sandbox Code Playgroud)

我不需要eval()任何脚本,我确信这update()会考虑任何浏览器怪癖.


此外,有谁知道如果使用:

Ext.fly('element-id').dom.innerHTML
Run Code Online (Sandbox Code Playgroud)

是相同的

d.getElementById('element-id').innerHTML
Run Code Online (Sandbox Code Playgroud)


浏览器和平台兼容性很重要,如果两者基本相同,那么Ext.element.dom.innerHTML完全update()放弃可能是我最好的解决方案.

在此先感谢您的帮助,

布赖恩

extjs innerhtml

6
推荐指数
1
解决办法
2万
查看次数

JavaScripts的.innerHTML会抓取<script>标签吗?

如果你使用类似的东西:

var contents = document.getElementById('foobar').innerHTML;
Run Code Online (Sandbox Code Playgroud)

#foobar包含<script>标签,是否包含标签<script>

编辑:他们是.证明:http://jsfiddle.net/trusktr/YBzTB/

html javascript dom innerhtml

6
推荐指数
1
解决办法
524
查看次数

当我使用Javascript innerHTML调用它时,为什么我的图像不显示?

我是Javascript的新手,我正在尝试一些事情.我正在使用函数使用innerHTML在表中加载图像.但是图像没有显示,除非我在函数底部调用alert("whatever"),然后在警报可见时显示.我正在使用的代码是(从外部js文件调用该函数)

<script>
   function show(){
        document.getElementById('imageHolder1').innerHTML="<a href="#"><img='photos/picture.jpg' border=0/></a>";
    }
</script>

<body> <input name="b1" type="button" value="pics" onclick="show()"/>
<table><td id='imageHolder1'>picture</td></table>
</body> ``
Run Code Online (Sandbox Code Playgroud)

我不明白为什么它不起作用,我所看到的所有例子都是相似的,我看不出有什么大的区别.即使我试着用标签它也行不通.欢迎任何帮助!在此先感谢,如果你对如何做到这一点有任何建议(因为我还在学习javascript,没有jquery)我也很感激.再次感谢!

javascript image innerhtml

6
推荐指数
1
解决办法
2万
查看次数

如何使用 PHP 更改innerHTML?

我想用 PHP 代码更改innerHTML。但我无法让它工作,我不明白为什么。我希望它更改页面上的一些文本,但来自另一个文件。所以我想我可以使用这个:

document.getElementById ("page"). innerHTML = "<? php echo $ home?>";
Run Code Online (Sandbox Code Playgroud)

但它不起作用。

这是我的代码:

<?php
$home = file_get_contents("home.php");
?>
<script type="text/javascript">
    function ChangePage(page)
    {
       if(page == "home")
            {
            document.getElementById("page").innerHTML = "<?php echo $home ?";
            }
        }
</script>
Run Code Online (Sandbox Code Playgroud)

php innerhtml

6
推荐指数
1
解决办法
6万
查看次数

JQuery中的text vs innerHTML

我从两种方法得到相同的结果,但不知道为什么.关于SO的研究告诉我:

.text()返回JUST该元素及其所有后代元素的文本,其中.innerHTML返回该元素中的所有HTML.

然而,进一步的研究告诉我:真正的问题是text()和innerHTML对完全不同的对象进行操作.

我能澄清一下吗?

HTML

<table id="table2">
<th> Col1 </th>
<th> Col2 </th>
<tbody>
<tr>
<td id="data">456</td>
</tr>
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

JQuery的

$('td').click(function() {
    var x=$(this).text();
    alert(x); //returns '456'
})

var abc = document.getElementById('data');
var xyz = abc.innerHTML;
    alert(xyz); //also returns '456'
Run Code Online (Sandbox Code Playgroud)

jquery text innerhtml

6
推荐指数
1
解决办法
8106
查看次数

range.insertNode() 未按预期插入文本节点

我正在创建一个 chrome 扩展。基本上,如果用户单击内容菜单选项,我想在所选文本之前和之后插入 HTML 格式标签。

这些标签被添加到事件页面中,在添加格式标签后,该事件页面会在消息对象的“粘贴”键中向内容脚本触发新值。

我的内容脚本的代码如下:

chrome.runtime.onMessage.addListener(handleRequest)

function handleRequest(message, sender)
{
    if (message.paste!==undefined) 
    {
        var newNode = document.createTextNode('');
        newNode.innerHTML=message.paste;   

        var cursor = window.getSelection().getRangeAt(0);       
        cursor.deleteContents();     
        cursor.insertNode(newNode);    
        alert(newNode.innerHTML);       
    }
}
Run Code Online (Sandbox Code Playgroud)

我认为我这样做是正确的,因为根据这个

如果要将新节点添加到文本节点,则该节点将在插入点处拆分,并且插入发生在两个文本节点之间。

但是,单击上下文菜单选项的结果只是删除所选的任何文本。新文本永远不会添加,但不会将错误打印到控制台。

我知道这不适用于输入元素或文本区域中的内容,现在我只是试图让它在页面上的常规文本上工作。

正如预期的那样,警报弹出窗口的内容是格式化标签包围的选定文本。

有人可以解释我做错了什么吗?我不应该编辑文本节点的 HTML 吗?我是否缺少最后一步来使文本显示?

错误示范:

如果我突出显示该问题的标题,则会出现以下警告框(我单击了删除线选项)。请注意,标题已从页面上消失。

在此输入图像描述

html javascript dom innerhtml google-chrome-extension

6
推荐指数
1
解决办法
6607
查看次数

当通过innerHTML添加元素时,为什么我的动画会"重播"?

我有一个小脚本,innerHTML在点击我页面上的按钮时添加一个名为"doge"的div ,在这个页面上有一个带有CSS关键帧动画的div.

但是,当我单击按钮在我的页面上添加名为"doge"的div时,CSS动画将被"重放".为什么?我该如何解决这个问题?

function addHtml() {
    document.getElementById("wow").innerHTML += '<div class="doge">such wow</div>';
}
Run Code Online (Sandbox Code Playgroud)
@keyframes color {
    10% {
        background: #4CAF50;
    }
    50% {
        background: #3F51B5;
    }
    100% {
        background: #009688;
    }
}

.myDiv {
    background: #000;
    color: #fff;
    animation: color 1s;
}

.doge {
    background: #F57F17;
}
Run Code Online (Sandbox Code Playgroud)
<div id="wow">
    <div class="myDiv">Hi!</div>
    <br>
    <button onclick="addHtml()">Add HTML!</button>
</div>
Run Code Online (Sandbox Code Playgroud)

的jsfiddle

html javascript css innerhtml css3

6
推荐指数
1
解决办法
89
查看次数

尝试使用 JavaScript 触发 CSS 转换

在使用 JavaScript 和 CSS 转换时,我尝试使用 JavaScript 和 innerHTML 动态插入 div 后立即删除 CSS 类。

我真的很惊讶地发现与蓝色 div 的不透明度相关的 CSS 转换没有按照我想要的方式触发(在 Safari 下工作,在 Chrome 下随机工作,在 Firefox Dev Edition 下不起作用)。有人可以解释这种现象吗?

我不确定为什么它的工作方式与红色 div 的工作方式不同。也许我不知道浏览器如何处理 innerHTML ?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Having fun with JS</title>
    <style>
        .std {
            width:100px;
            height:100px;
            opacity: 1;
            transition: opacity 5s;
        }

        .std--hidden {
            opacity: 0;
        }

        .std--red {
            background-color: red;
        }

        .std--blue {
            background-color: blue;
        }
    </style>
</head>
<body>
<button>click here</button>
<div class='std std--red std--hidden'></div>
<div class='insert-here'>
</div> …
Run Code Online (Sandbox Code Playgroud)

javascript css innerhtml listener css-transitions

6
推荐指数
1
解决办法
2698
查看次数

使用innerHTML,安全问题是什么?

有人告诉我在我的 JS 代码中使用 innerHTML 是危险的。我确实明白为什么,但是有人能告诉我这两种使用方式之间是否有区别吗?

第一的:

const onePersonArticle = create('article');
onePersonArticle.className = 'one-person';
const content = ` <label class='info-labels' for="name">NAME: </label><label id='name' class='data-labels'>${member.name}</label>
    <label class='info-labels' for="phone">PHONE: </label><label id='phone' class='data-labels'>${member.phone}</label>
    <label class='info-labels' for="code-wars">CODEWARS: </label><label id='code-wars' class='data-labels'>${member.cwb} - ${member.cwa}</label>
    <label class='info-labels' for="free-code-camp">FREECODECAMP: </label><label id='free-code-camp' class='data-labels'>${member.fccb} - ${member.fcca}</label>
    <label class='info-labels' for="notes">NOTES: </label><label id='notes' class='data-labels'>${member.notes}</label>
    <span class="person-buttons"><button type="button" name="button" class="button delete-button">?</button>
    <button type="button" name="button" class="button edit-button">?</button></span>`;
onePersonArticle.innerHTML = content;
Run Code Online (Sandbox Code Playgroud)

第二:

const onePersonArticle = create('article');
onePersonArticle.className = 'one-person';
onePersonArticle.innerHTML =
  ` <label class='info-labels' for="name">NAME: </label><label …
Run Code Online (Sandbox Code Playgroud)

html javascript security xss innerhtml

6
推荐指数
1
解决办法
3770
查看次数