将width属性添加到字符串中的img

时间:2017-07-21 15:53:49

标签: javascript

假设我有类似

的字符串
x = '<div class="sample">
     <img src="http://www.example.com/i/java.png"> 
 </div>
 <div class="sample_another">
     <img src="/i/somedir/python.png"> 
</div>'

我有两个功能

getheight()=&gt;返回img高度和 getwidth()=&gt;返回img width

我想将宽度和高度属性添加到img标签,其值可以从这些函数中获取。我无法找到正则表达式,所以我更多地考虑一般方法。

这是我到目前为止所提出的

var string ="<img alt='' src='http://api.com/images/UID' /><br/>Some plain text<br/><a href='http://www.google.com'>http://www.google.com</a>";

var elem= document.createElement("div");
elem.innerHTML = string;

var images = elem.getElementsByTagName("img");
for(img in images){
   ...
}

但我不知道如何继续,因为这是从dom元素转换为字符串。而我仍然需要追加高度和宽度。

我的最终字符串应该是这样的

x = '<div class="sample">
         <img src="http://www.example.com/i/java.png" height="200px" width="100px"> 
     </div>
     <div class="sample_another">
         <img src="/i/somedir/python.png" width="150px" height="150px"> 
    </div>'

任何人都可以帮助我实现这一目标。谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用require_once(realpath(dirname(__FILE__) . "/../dbconnect.php")); 属性设置图像的height属性的值。并height设置宽度。

如果您的字符串中有多个width标记,请使用for循环,如下所示。如果不是,您只需使用img而不进行循环。

编辑:如果您想更改字符串本身,只需重新分配字符串,如下所示

&#13;
&#13;
images[0]
&#13;
&#13;
&#13;