js正则替换图片属性

JavaScript026

js正则替换图片属性,第1张

正则替换:.replace(/(src=[^u]*upload[^ >]*)([ >])/g,'$1 class=“aaa”$2')

比如你执行一下

function run(){alert("<img src=image/Jerryuploadhello/1.jpg>".replace(/(src=[^u]*upload[^ >]*)([ >])/g,'$1 class=“aaa”$2'))}

就知道了。

不过用正则替换的方法涉及改变innerHTML或outerHTML,最直接的方法可能是

arr=document.getElementsByTagName("img") for(i=0i<arr.lengthi++)if(/upload/.test(arr[i].src))arr[i].className=“aaa”

你写错了. 不是这样写的. 应该是这样:

function change0(){

document.getElementById("ki").src = "1.jpg"

}

这样就可以了.

通过找到img这个元素,然后再找到这个元素里的src属性,就可以查看,更改这个属性了

1)原生js

元素.setAttribute() //增加,更改属性,有两个参数,第一个参数是属性名,第二个是值.

元素.getAttribute() //传入属性名,获得该属性对应的值

2)Jquery(需要导包)

元素.attr()//可传两个参数,传一个为获取该属性的值,传两个位增加 或 更改这个属性.

举个例子:

<!doctype html>

<html lang="en">

<head>

    <meta charset="UTF-8">

</head>

<body>

<img src="6.jpg">

<script src="jquery-2.1.1.min.js"></script>

<script>

    //原生js

    document.getElementsByTagName('img')[0].setAttribute('name','myimg')//没'name'属性,添加'name'属性,值为'myimg'

    document.getElementsByTagName('img')[0].setAttribute('src','7.jpg')//以有'src'属性,更改值为'7.jpg',达到换图片的目的

    document.getElementsByTagName('img')[0].getAttribute('src')//返回'src'的值,'7.jpg'

    //Jquery

    $('img').attr('src','6.jpg')//把src属性更改为'6.jpg'

    $('img').attr('src')//获得src属性为'6.jpg'

</script>

</body>

</html>