Javascript从浏览器隐藏网址并在灯箱iframe中打开

时间:2015-07-22 11:22:55

标签: javascript iframe lightbox2

我有以下javascript来隐藏网址..这很好..

<div class="book">

我的问题:

问题:我在wordpress中为会员网站制作表单。会员插件无法保护html页面,因为无法通过媒体上传添加html页面。

我想添加在灯箱iframe中打开链接的功能..这是我追求的最终结果:

http://snag.gy/WuEZa.jpg

目前,上面的脚本将执行一半的工作,即在将鼠标悬停在链接上时隐藏URL,但会在新的浏览器选项卡中打开,并在完整视图中显示URL。如果我可以打开灯箱iframe内的链接,则不会显示目标网址。

任何人都可以提供帮助。

2 个答案:

答案 0 :(得分:0)

这是一种错误的做法。为什么要隐藏网址?

可以在前端和后端设置允许的扩展名。

可以在iframe中查看Html文件。就这样。当然,使用Lightbox,Fancybox等进行精心设计。

答案 1 :(得分:0)

您可以向当前网址添加哈希值,仅供查看。

$("a.hidelink").click(function(){
      url = $(this).attr("hiddenhref");
      window.location.hash="url=" + url 
      window.open(url, '_blank');
})

修改 如果你想在iframe中打开链接,你需要像这里一样设置新的src。而window.location.hash,可以帮助您从代码和地址栏中操纵iframe网址。

<iframe id="iframe1" src="target.html"></iframe>

  $("a.hidelink").click(function(){
       var url = $(this).attr("hiddenhref");
       window.location.hash="url=" + url 
  })

$(window).bind('hashchange', function() {
   var hash = window.location.hash;
   if(hash.indexOf("#url=") > -1){
      var url = hash.replace('#url=', '');
       $(#frame1).attr("src",url);
   }
});

或只是(地址栏没有任何变化)

  $("a.hidelink").click(function(){
       var url = $(this).attr("hiddenhref");
        $(#frame1).attr("src",url); 
  })

或在fancyBox中打开,在我读过的一篇文章中

  

灯箱不会做iframe。我推荐Fancybox

http://www.dynamicdrive.com/forums/showthread.php?66377-Lightbox-how-to-open-iframe-inside-lightbox-instead-of-image

  $("a.hidelink").click(function(){
       var url = $(this).attr("hiddenhref");
       $.fancybox.open({
         padding : 0,
         href: url,
         type: 'iframe'
       });
  })