2015-06-15 110 views
0

我想在这里工作一段时间,然后我终于决定将它发布到这里。如何在用户尝试在新选项卡中打开链接时打开iframe中的链接?

所以我有一个导航栏,导航栏中的每个项目都会在主页上的iframe中打开一个链接。

首页(的index.php)的所有代码

我的导航栏:

<ul id="nav"> 

     <li style="width: 20%"> 
      <a href="home.php" target="iframe" id="navBarLeft">Home</a> 
     </li> 

     <li style="width: 30%"> 
      <a href="saleItems.php" target="iframe" >Sale Items</a> 
      <ul>      
       <li><a href="saleFlyer.php" target="iframe" id="navMid">Sale Flyer/Coupons</a></li>     
      </ul> 
     </li>    

     <li style="width: 30%"> 
      <a href="location.php" target="iframe">Store Information</a> 
     </li> 

     <li style="width: 20%"> 
      <a href="contact.php" id="navBarRight" target="iframe">Contact Us</a> 
     </li> 

</ul> 

我的IFRAME:

<iframe src="home.php" name="iframe" id = "iframeID" scrolling="no"></iframe> 

所以默认情况下它加载了home.php和用户可以浏览导航栏中的所有链接,链接中的相应php文件将加载到iframe中。

但是,如果用户试图在新选项卡中打开它,页面会显得很奇怪,因为它们都是为iframe优化的。

任何方式,如果用户尝试在新选项卡中从导航栏中打开链接,它会加载index.php(我的主页),并在iframe中加载他们试图用新标签打开的页面反而出现在iframe中。

+1

这是不可能的 – Tuhin

+0

不可能和非常**没做** - 不要试图强制用户的不同行为。他们已经决定他们想要在新标签中,不要强迫你的iframe。这完全违背了用户期望或想要的。另外,'iframes'?在这个时代?他们不会在手机上自然地工作,所以请使用它们稀疏。 – somethinghere

回答

0

您可以挂在链接onclick,其中将是更改iframe src的代码。

<a href="saleItems.php" onclick="document.getElementById('iframeID').src = this.getAttribute('href'); return false;" >Sale Items</a> 
+0

这确实照顾了链接上的中间点击,但如果用户右键单击链接并在新选项卡中打开该链接,则仍然不会处理该选项。 – BaBazinga

相关问题