2010-06-07 67 views
0

我在Drupal中使用Views来显示节点的玩笑。我现在想要在页面左侧的Views左侧显示完整的节点,并在用户点击不同的预告片(更好地使用AJAX)时更新它。Drupal,Views ..如何以交互方式显示视图列表+完整节点?

什么是实现它的最佳方法。我正在考虑使用一个灯箱,但它有点复杂(很多并发症......例如再次解析JavaScript的内容..等)。

见截图:http://dl.dropbox.com/u/72686/viewsAndNode.png

感谢

回答

0

我已经解决了使用t他的灯箱,只是删除HTML代码,我不需要从节点模板与PHP如果参数“灯箱= true”与链接传递。

0

一个快速和肮脏的方法是使用iframe来保存节点内容。用户然后可以在不重新加载页面的情况下在节点之间切换,这是我假设你的目标。我不认为你可以通过开箱即可完成你想要做的事情。你看过使用面板吗?

+0

要澄清,主要是为OP,你指的是面板模块(http://drupal.org/project/panels),正确吗? – intuited 2010-06-08 01:07:19

+0

你对OP有什么意义?我其实想要一个干净的解决方案,因为我到目前为止使用了ightbox,iframe很糟糕,它加载了两次javascript文件,我无法解析内容等。 – aneuryzm 2010-06-08 07:07:11

0

下面是干净的方式来做到这一点,当然在drupal中总有很多方法可以完成任务。

提供内容的Ajax调用

  • 安装服务模块
  • 设置,提供您的节点服务,因为你希望它显示

为您的内容创建占位符

  • 安装面板模块
  • 创建一个空的固定宽度面板包含要
  • 装入视图加载到相邻的面板

在您的控制视图节点

  • 添加PHP观点报头,并使用( drupal_add_js('script.js'))添加一个自定义的js文件到页面。或将其添加到自定义模块,甚至添加到您的主题。
  • 重新写你的看法节点链接,以帮助把JS事件一起

设置你的JavaScript事件

  • 使用add_js到自定义的javascript js文件添加到页面
  • 在自定义js添加事件到视图链接,将轮询服务模块并将节点加载到占位符面板中
+0

如果你想跳过服务模块,可以在这里找到一个关于在自定义模块中创建ajax回调的教程:http://drupal.org/node/42562 – math0ne 2010-06-10 12:47:20