如何在Laravel视图中给出一个锚点

时间:2014-02-03 14:51:27

标签: php hyperlink laravel laravel-4 blade

我正在使用刀片模板,我想让用户在点击链接时导航到页面上的某个点。这是我的看法: -

View::make($data->path)->with('data', $data)->with('title', $title);

我的路径是从数据库中提取的。

有一个链接: -

 <a id="middle">Welcome to the user section</a>

现在我不认为将#middle放在make()中会有所帮助: -

我试过了: -

 View::make($data->path."php#middle")->with('data', $data)->with('title', $title);

View::make($data->path.".blade.php#middle")->with('data', $data)->with('title', $title);

但似乎都不起作用。

我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:4)

您的视图只是要呈现的文件 - 您不应将其与请求URL混淆,后者由路由确定。

您需要做的就是将锚点添加到用户点击的URL,以便在路径末尾到达此位置。如果您不能在生成链接时确定,则应使用逻辑中的重定向到您希望包含的URL。

也就是说,您也可以将一个变量传递给您的页面,javascript用它来将页面滚动到适当的位置:

View::make($data->path)->with('data', $data)->with('title', $title)->with('scroll', 'middle');

然后,在您的页面上,在javascript:

document.getElementById('{{ $middle }}').scrollIntoView();

答案 1 :(得分:0)

覆盖getRedirectUrl:

protected function getRedirectUrl()
{
    $url = $this->redirector->getUrlGenerator();
    return $url->previous() . '#hashid';
}
相关问题