当用户点击预告片标题时,我想要打开新的浏览器窗口

时间:2011-12-20 03:39:10

标签: drupal drupal-7

我知道如果我将target="_blank"添加到<a>标记,则会在点击链接时打开新窗口。
但是如何将这个添加到Drupal方式的<a>标签中呢? 这是一个预告片标题,而不是我在一个区块中创建或具有直接编辑能力的锚 谢谢大家。

3 个答案:

答案 0 :(得分:3)

您可以使用jquery添加target="_blank",这样就可以避免使用不兼容的标记。

$(document).ready( function() {
    $('a.teaser-title-class').attr({
        target: "_blank", 
        title: "Opens in a new window"
    });
});

使用您的预告片标题类更改 teaser-title-class 。你可以在chrome或firefox中使用“inspect element”找到它的类。如果预告片类不可用,您可以通过其他方式使用选择器,例如:$('#teaser a')

答案 1 :(得分:2)

正如Marius所说,您可以使用节点模板文件,但这涉及不合规的标记。如果你使用JS,那么Drupal方式使用行为。另外,您不应该认为D7中的$jQuery。这是一个例子:

(function ($) {
  Drupal.behaviors.titleTargetModify = {
    attach: function(context) {
      $('h2 a:not(.titletarget-processed)', context)
      .addClass('titletarget-processed')
      .attr('target', '_blank');
    }
  };
}(jQuery));

More details

答案 2 :(得分:1)

这可以在你的主题文件中更改(通常是node.tpl.php),你只需在那里添加目标属性。请记住,target属性不符合xhtml,您应该使用javascript添加目标属性