【问题标题】:PHP syntax for opening a new tab on click单击时打开新选项卡的 PHP 语法
【发布时间】:2021-06-04 03:27:14
【问题描述】:

我需要在某处添加target="_blank" 属性,以便在单击徽标时它们会在新选项卡中打开。

我正在开发一个网站,该网站使用以下 PHP 代码来引用徽标中的链接:

<?php if($cta): ?>
    <div class="product-logos-container">
        <?php foreach($cta as $_cta): ?>
            <span class="card" <?php if($_cta['banner_link']): ?>onclick="window.location.href='<?php echo $_cta['banner_link'] ?>'"<?php endif ?>>
                <span class="detail" style="opacity: 0;">
                    <span class="inner"><?php echo $_cta['banner_title'] ?></span>
                </span>
                <img src="/clear_cta/<?php echo $_cta['banner_filename'] ?>" alt="<?php echo $_cta['banner_title'] ?>" class="image"/>
            ......

现在我相当确定我需要将target="_blank" 添加到第 4 行。我不确定哪种语法适合它,在做了一些研究之后,我开始认为window.location 可能是问题所在。如果是这样,请告知在新标签中单击时会打开链接的替代代码。

【问题讨论】:

  • target 不允许在 &lt;span&gt; 元素上使用。如果需要在新标签页中打开窗口,请使用 JS 中的window.open() 方法。
  • 使用 &lt;a target="_blank" 代替,如果需要,还可以使用 CSS 使其看起来像你想要的那样。

标签: php echo href


【解决方案1】:

使用 window.open 代替 window.location

window.open('<?php echo $_cta['banner_link'] ?>',
'_blank' // <- This is what makes it open in a new window.
);

【讨论】:

  • 感谢大家的贡献。这对我来说完美无缺。祝你有美好的一天
【解决方案2】:

在您的情况下,这更像是一个 JavaSript 问题。重要的部分是

window.location.href=something

从 JavaScript 打开一个新窗口或标签是非常复杂的。这是臭名昭著的弹出窗口。浏览器早就开始默认屏蔽了。

你可以尝试重写这部分

<span class="card" <?php if($_cta['banner_link']): ?>onclick="window.location.href='<?php echo $_cta['banner_link'] ?>'"<?php endif ?>>?>onclick="window.location.href='<?php echo $_cta['banner_link'] ?>'"<?php endif ?>>

进入类似的东西

<a class="card" <?php if($_cta['banner_link']): ?>href="<?php echo $_cta['banner_link'] ?>" target="_blank"<?php endif ?>>

并更改结束标记。

【讨论】:

    【解决方案3】:

    只有我们可以在锚标签()中使用target="_blank" 来告诉浏览器应该在哪里加载链接的文档。

    试试这个

    1

    <span>
        <a href="portfolio.html" target="_blank">See my portfolio</a>
    </span>
    

    2

     <a target = '_blank' href=view_rfp_detail.php?sna=$sna >$sna</a>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-27
      • 2014-05-08
      • 1970-01-01
      • 2021-12-29
      • 2019-09-20
      • 2022-07-30
      • 1970-01-01
      • 2016-03-11
      相关资源
      最近更新 更多