在重定向到视图时,使用#id - Laravel 5.3将其滑动到页面的特定部分

时间:2017-02-22 15:49:49

标签: php laravel-5 laravel-5.3 http-redirect

我有一条路线重定向到控制器,告诉视图显示。但是我怎样才能进入页面的特定部分。让我解释一下:

我正在使用fullpage.js库来创建页面断点。 例如:/home#firstPage/home#secondPage等。当我被重定向到/ home时,我想转到页面的特定部分。我只需要一种在url中输入#3rdPage的方法。

我在哪里以及如何看待它?

我的路线

Route::get('/home_done', ['as' => 'home_done','uses' => 'HomeController@home']);

我的控制器

public function home()
{
    return view('home_done');
}

我想做点什么:

    return view('home_done#3rdPage');

2 个答案:

答案 0 :(得分:0)

您应该设置一个新功能和路线,以便在执行逻辑后将用户重定向到正确的页面:

public function home()
{
    return view('home_done');
}

public function step_3()
{
    // do something and redirect
    return redirect('home_done#3rdPage');
}

使用view不起作用,因为您正在加载文件,而不是页面。

答案 1 :(得分:0)

当用户访问您的网页而#认为它等于#firstpage时,您需要更改JS中的行为。

并在您的html中通过#what_you_need正确生成网址来管理所有网页。

你的刀片示例中的

<a href="<?php echo route("home_done") . "#firstpage"; ?>">firstpage</a> 
//OR 
<a href="<?php echo route("home_done") ?>">firstpage</a> //because this is the same for your JS
<a href="<?php echo route("home_done") . "#secondpage"; ?>">secondpage</a>

或刀片语法

<a href="{{ route("home_done") . "#firstpage"; }}">firstpage</a> 
//OR 
<a href="{{ route("home_done") }}">firstpage</a> //because this is the same for your JS
<a href="{{ route("home_done") . "#secondpage"; }}">secondpage</a>