2013-06-23 140 views
-1

我有高度和宽度值的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

你可以使用PHP,或只有JavaScript?你可以使用jQuery吗? – Stefan

+0

HTML,jQuery和JavaScript,我没有一个PHP服务器 – Xcite

回答

0

如果只能使用JavaScript,然后使用这个功能来读取宽度和HEIG HT值:

// 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> 
+0

它不工作,检查:http://redzeronline.ucoz.com/test1.html?width=900&height=450 – Xcite

+0

@Xcite:上面只是一个功能!您还必须编写调用该函数的脚本并调整iFrame属性。 (另外,您必须在脚本标记中添加type =“text/javascript”。) – Stefan

+0

对不起,我是noob :(但看看会发生什么: http://redzeronline.ucoz.com/test1.html?width = 600&height = 500它改变iframe的大小,但不改变src的值 – Xcite