我有一个iframe源代码,其高度和宽度值需要根据查询字符串进行更改,如下所示:
<iframe width="(value1)" height="(value2)" scrolling="no" frameborder="0" allowtransparency="true" marginwidth="0" marginheight="0" src="http://mips.tv/embedplayer/test121/1/(value1)/(value2)"></iframe>
我想要这样的网址:
mywebpage.com/something.html?width=(value1)&height=(value2)
请帮助我,我已经找了好几个星期
答案 0 :(得分:0)
如果你只能使用javascript,那么使用这个函数来读取宽度和高度值:
// return value of key_str variables query string of url
// Example: url = "index.html?alert=5&page=index"; if key_str = "alert" then it returns "5"
function getQuery(key_str) {
if(window.location.search) {
var query = window.location.search.substr(1);
var pairs = query.split("&");
for(var i = 0; i < pairs.length; i++) {
var pair = pairs[i].split("=");
if (unescape(pair[0]) == key_str) return unescape(pair[1]);
}
return null;
}
}
然后您可以轻松使用jQuery / javascript来调整iFrame的属性:http://api.jquery.com/attr/#attr2。
编辑:好的,试试吧。为您的iFrame命名(下例中的'myiframe'):<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type='text/javascript'>
function getQuery(key_str) {
if(window.location.search) {
var query = window.location.search.substr(1);
var pairs = query.split("&");
for(var i = 0; i < pairs.length; i++) {
var pair = pairs[i].split("=");
if (unescape(pair[0]) == key_str) return unescape(pair[1]);
}
return null;
}
}
var width = getQuery('width');
var height = getQuery('height');
var src = 'http://mips.tv/embedplayer/test121/1/' + width + '/' + height;
$(document).ready(function() {
var f = $('iframe[name=myiframe]');
f.attr({
'width' : width,
'height' : height,
'src' : src
}
);
});
</script>