在iFrame中打开WordPress中的外部链接

时间:2015-12-26 15:57:20

标签: php wordpress

我想打开iframe中的所有外部链接,例如digg / themeforest.net 我网站上的大多数帖子都会将用户重定向到外部链接,因此我想使用此方法。我搜索了很多,但无法找到我想要的答案。请帮我完成这件事。 谢谢。 我正在寻找的解决方案是

<a href="http://stackoverflow.com/posts/34472898/">Question</a>

点击链接时,如果是外部链接,则会在iFrame中加载

2 个答案:

答案 0 :(得分:2)

假设您的iframe标识为your-iframe

var $iframeSelector = $("#your-iframe");

var currentDomain = document.location.protocol + '//' + document.location.hostname;
var outboundLinks = 'a[href^="http"]:not([href*="' + currentDomain + '"])';

$(document).on('click', outboundLinks, function(){
  $iframeSelector.attr('src', $(this).attr('href'))
});

只需在加载DOM后(在$(document).ready(function(){... })块中)

将其添加到任何javascript中

答案 1 :(得分:0)

首先,你需要检查你的主播的href是外部的还是内部的,如果它是外部的,那么将它加载到iframe中

var comp = new RegExp( "your_site_url" );
var http_regez = new RegExp( "http" ); // for http:// and https://
var www_regez = new RegExp( "www" );

jQuery('a').click(function(event){
    var href_val = jQuery(this).attr('href');
    var is_external = false;
   if(comp.test(href_val)){
       is_external=false;
   }
   else if( http_regez.test(href_val) || www_regez.test(href_val) ){
       is_external=true;
   }
   else{
       is_external=false;
   }
   if(is_external){
        event.preventDefault();
        jQuery("#externalLinkIframe").attr('src',href_val);
        return false;
   }
});