下面有一个名为“embed”的字符串,我想通过比例因子(此处为 .8)修改宽度参数。
scale = .8;
var embed = '<iframe width="960" height="315" src="//www.youtube.com/embed/kk5xfJodtrk" frameborder="0" allowfullscreen></iframe>';
所以当我完成后,嵌入字符串应该是:
embed = '<iframe width="768" height="315" src="//www.youtube.com/embed/kk5xfJodtrk" frameborder="0" allowfullscreen></iframe>';
实际上,不带引号的 width=768 也适用于我。
我已经尝试了很多东西。最新的是
var scale = .8;
var embed = '<iframe width="960" height="315" src="//www.youtube.com/embed/kk5xfK0ovrk" frameborder="0" allowfullscreen></iframe>';
var new_embed = embed.replace(/width="(\d+)/,"width=" + scale*$1);
但这会提示 $1 未定义。
感谢您的帮助。
最佳答案
//bit long, but works, can be shortened , no time :P
var scale = 0.5;
var embed = '<iframe width="960" height="315" src="//www.youtube.com/embed/kk5xfK0ovrk" frameborder="0" allowfullscreen></iframe>';
var embed = embed.replace(/width="(\d+)/,function myFunction(x){return "width=\""+x.replace("width=\"","") *scale;} );
var embed = embed.replace(/height="(\d+)/,function myFunction(y){return "height=\""+y.replace("height=\"","") *scale;} );
document.write(embed);
关于javascript - 使用 RegEx 将比例因子应用于 JavaScript 字符串变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30295411/