通过javascript在iframe中写入当前网址

时间:2012-07-27 12:17:51

标签: javascript iframe

我正在尝试使用javascript在框架中编写当前网站网址。但我的方法不起作用...我想要做的是将当前的url路径写入此代码而不是“CURRENT + WEBSITE + URL + HERE”文本。

我目前的iframe代码:

<iframe allowtransparency='true' frameborder='0' height='600px' id='web search' marginheight='0' marginwidth='0' scrolling='no' src='http://mysite.com/display?sid=1770469&title_color=0000FF&text_color=000000&background_color=FFFFFF&border_color=FFFFFF&url_color=000000&url=CURRENT+WEBSITE+URL+HERE&b=4' title='Find It' width='160px'></iframe>

在iframe url src中,您将获得“ CURRENT + WEBSITE + URL + HERE ”文字,我想放置当前网址,因此假设该网站的路径为“ http ://mysite.com/go/went/gone.html “,iframe将显示此网址:http://mysite.com/display?sid=1770469&title_color=0000FF&text_color=000000&background_color=FFFFFF&border_color=FFFFFF&url_color=000000&url=http://mysite.com/go/went/gone.html&b=4' title='Find It' width='160px

如果你要编码它,对我来说会好得多......

2 个答案:

答案 0 :(得分:0)

您可以使用document.URL

通过Javascript获取当前网址
var currentURL = document.URL;

然后,您可以通过访问它的src属性来访问或修改iframe的源。

实施例

var myFrame = document.getElementById('web search');
myFrame.src = 'some code ' + currentURL + 'some other code';

理论上,这会将iframe的来源改为

some code http://stackoverflow.com/questions/11687605/write-current-url-in-an-iframe-by-javascript some other code

这是一个简单的JSFiddle,可以帮助您:http://jsfiddle.net/BBog/xSCpH/ 请注意,您需要在页面加载后获取iframe,在window.onload内部,例如

window.onload = function() {
    //some code
    ....
    var myFrame = document.getElementById('web search');
}

这不是一件非常困难的事情,您需要亲自尝试一下。 StackOverflow的目的是帮助您学习,而不是让别人解决您的问题。

从长远来看,你编码会好得多。 尝试一下,如果你很难理解事情,那么人们(包括我自己)会更愿意帮助你。

答案 1 :(得分:0)

我们可以使用encodeURIComponent(location.href)。

location.href 提供当前位置

encodeURIComponent():将对URL参数进行编码。

示例

    $('<iframe scrolling="no" frameborder="0" style="width: 300px; height: 80px;'+
        '" src="http://www.facebook.com/widgets/like.php?href='+
            encodeURIComponent(location.href)+
        '"></iframe>').appendTo('#like-button')

为了更好地理解,请检查

Add Current page url to Iframe

encodeURIComponent 101

希望它有助于某人