将弹出页面上的页面链接替换为要在主(父)窗口中打开的Javascript
Replace Page Links on Popup Page With Javascript to Open in Main (Parent) Window
我的电台网站有一个弹出播放器。该窗口有指向我的网站中其他各种页面的链接,其中一些页面是由Wordpress小部件动态创建的。
我希望链接在父窗口中打开,因为大多数内容不适合小弹出窗口。
我采用的方法是使用javascript将链接重写为target="parent"。这与以下脚本一起工作(从页脚开始)。
<script>
var aEls = document.getElementsByTagName('a');
for (var i = 0, aEl; aEl = aEls[i]; i++) {
aEl.href = aEl.href.replace('target="_self"','target="_parent"');
}
var imgEls = document.getElementsByTagName('img');
for (var i = 0, imgEl; imgEl = imgEls[i]; i++) {
imgEl.src = imgEl.src.replace('target="_self"','target="_parent"');
}
</script>
然而,这只适用于页面上的静态链接,而不适用于通过我的滑块小部件或其他小部件生成的链接。
是否有一些地方需要包括这一点,或者在生成后可以进行调整以查找和替换所有链接?
编辑:为了避免混淆,我将重申这一要求(我的尝试只是一次尝试)。我需要重写我的弹出页面的所有链接,加载后,在主站点(父窗口)打开。
第2版:虽然我似乎可以替换target="_parent",但它并没有达到预期的效果。也许我需要用开窗器。有什么想法吗?
第三版:这是正确的。我认为我的查找/替换将不得不以某种方式围绕链接重建此功能。
您可以使用它。
$('img').each(function() {
var OldSrc = $(this).attr("src");
var newSrc = OldSrc.replace('target="_self"','target="_parent"');
$(this).attr("src",newSrc);
});
这是短解。
您不能从属性href替换属性target。使用el.target并只设置值
var aEls = document.getElementsByTagName('a');
for (var i = 0, aEl; aEl = aEls[i]; i++) {
aEl.target="_parent";
}
相关文章:
- 关闭黑莓浏览器窗口 JavaScript
- 关闭窗口 Javascript
- 清除窗口Javascript幻灯片
- 弹出窗口JavaScript的站点地图生成器
- 根据弹出窗口javascript的返回值更改asp.net面板的可见性
- 将var添加到新窗口Javascript中
- 如何在引导模式弹出窗口(javascript,jquery)上运行函数
- 仅包含某些数组值的单个弹出窗口.JavaScript
- 将值传递给弹出窗口 [JavaScript]
- 在链接后控制父窗口(JavaScript)
- 将数据发送到单独的窗口javascript
- 正在访问窗口.Javascript 中的应用程序函数
- 将变量从父窗口Javascript函数传递到弹出窗口分区
- 在内容进入打印机之前关闭窗口(JavaScript)
- 窗口.JavaScript中的innerWidth
- 是否可以从子窗口关闭父窗口(Javascript)
- 窗口.javascript中的Innerheight减去数字
- 如果我重写窗口.javascript中的onerror应该返回true还是false
- 计数值后关闭窗口javascript
- 如何在缩略图图像的翻转上显示弹出窗口?Javascript、CSS