使用JavaScript检测Drupal 6中的首页


8

在Drupal 6中使用javascript,是否有办法检测当前页面是否为首页?我有一个自定义的Drupal 6模块,该模块根据当前页面是否为首页来输出不同的javascript代码。它向drupal添加了一个javascript文件,因此我需要将检查内容放入javascript中。

该站点将通过Varnish缓存提供服务,因此我不想在PHP中添加支票,尽管我知道使用会更容易drupal_is_front_page()

有没有Drupal本机的方法可以做到这一点?基于jQuery的建议将受到高度赞赏。

谢谢。

Answers:


19

通常,Drupal 在充当首页的任何页面的body元素上添加“ front ”类。如果您主题的page.tpl.php正在打印主体类(即<body class="<?php echo $classes; ?>")(很可能是(应该)),则您的javascript可以检查主体元素是否具有“ front”类。

因此,假设使用jQuery(因为Drupal包括了它),那么您应该这样做:

if ($('body').hasClass('front')) { // do stuff...}

谢谢@亚历山大!得到它的工作。我当时考虑的太复杂了:)我认为当我可以简单地使用jQuery的选择器时,可能会有一些本机的Drupal函数。
kaustavdm 2011年

0

将drupal_is_front_page()的结果打印到javascript变量中,必要时使用json格式。只需编写javascript函数即可在需要时进行检查。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.