【问题标题】:clickable figcaption link on top of image Wordpress图像 Wordpress 顶部的可点击 figcaption 链接
【发布时间】:2018-01-10 02:16:15
【问题描述】:

我正在帮助一个朋友设置一个 Wordpress 页面,但我遇到了一个不知道如何解决的问题。

我在侧边栏中添加了一些图像小部件,这些小部件链接到网站上的不同类别。问题是图像文本应该在半透明框中的图像顶部,并且该框不是可点击的链接。是否可以在框中添加相同的链接?

小部件生成如下示例所示的 HTML 结构,我添加了一些 CSS 来显示半透明文本框的外观。

figcaption {
  position: relative;
  height: 80px;
  width: 300px;
  background: white;
  top: -235px;
  left: 85px;
  padding-top: 60px;
  text-align:center;
  opacity: 0.8;
  font-weight: bold;
  font-size: 140%
}
<figure>
  <a href="some link">
    <img src="http://static.highsnobiety.com/wp-content/uploads/2016/09/07200609/super-mario-run-iphone-7-01-480x320.jpg">
  </a>
  <figcaption>Super Mario</figcaption>
</figure>

【问题讨论】:

  • 为什么你可以把figcaption放在&lt;a&gt;标签里面? jsfiddle.net/qzjgvLfy
  • Hey Grasper 这个 HTML 是由 Wordpress 自动生成的,我似乎找不到可以编辑它的地方。有可能在某个地方做吗?因为这很容易解决:)
  • 如果你不能改变html,你可以用javascript来做。这是一个选择吗?
  • 创建一个自定义小部件并使用它来代替wpbeginner.com/wp-tutorials/…
  • 感谢 Grasper 的建议!

标签: javascript html css wordpress hyperlink


【解决方案1】:

外观 > 自定义 > 附加 CSS

figcaption
{
    cursor: pointer;
    pointer-events: none;
}

【讨论】:

  • 这比乱用JS要好得多。就当 figcaption 不存在。
【解决方案2】:

如果您无法更改 html,则必须使用 javascript/jquery 来实现。在 WordPress 小部件管理器中,创建一个新的纯文本小部件并将其粘贴到:

<script>
jQuery(function($){
  var $sidebar = $('.sidebar'); // change this selector to target your sidebar
  $sidebar.find('figcaption').on('click',function(e){
    e.preventDefault();
    $(this).parents('figure').eq(0).find('a').click();
  });
</script>

或者,为了防止 Wordpress 添加 &lt;p&gt; 将其全部放在一行中:

   <script>jQuery(function($){var $sidebar = $('.sidebar'); $sidebar.find('figcaption').on('click',function(e){e.preventDefault();$(this).parents('figure').eq(0).find('a').click();});</script>

【讨论】:

  • 嘿杰克!谢谢回复!我在 javascript 方面还没有那么经验丰富(还没有!),所以我真的很感激 :) 我试图将 javascript 复制到纯文本小部件中,但控制台记录了这个错误:“$sidebar is not a function” in reference到这一行:“$sidebar('figcaption').on('click',function(e){"
  • 别担心! :) 这次控制台记录了“ Unexpected token ( ”,引用了“ $sidebar.('figcaption')......”中的括号。很抱歉再次打扰您!
  • 好的,现在试试。当您分发代码甚至没有测试一次时,就会发生这种情况。 ;)
  • 哈哈是真的 :P 好消息是控制台中没有错误!但是当我单击该框时没有任何反应。我可以看到脚本标记自动包装在

    标记中。这会导致问题吗?

  • 是的,愚蠢的 wordpress 包装了那些脚本标签,嗯?全部放在一行上。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-04
  • 1970-01-01
  • 2015-07-26
  • 2019-06-02
  • 2014-12-12
  • 1970-01-01
相关资源
最近更新 更多