2017-02-22 9 views
0

У меня есть маршрут, который перенаправляется на контроллер, который указывает, что нужно показать. Но как я могу перейти к определенной части страницы. Позвольте мне объяснить:При переадресации на просмотр, переместите его на определенную часть страницы, используя #id - Laravel 5.3

Я использую библиотеку fullpage.js для создания контрольных точек страницы. например: /home#firstPage, /home#secondPage и так далее. Когда я перенаправлен в/home, я хотел бы перейти к определенному разделу страницы. Все, что мне нужно - это способ ввода # 3rdPage в url.

Где и как это сделать, чтобы увидеть это действие?

мои маршруты

Route::get('/home_done', ['as' => 'home_done','uses' => '[email protected]']); 

мой контроллер

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

Я хотел бы сделать что-то вроде:

return view('home_done#3rdPage'); 

ответ

0

Вы должны настроить новую функцию и маршрут для перенаправления пользователей для исправления страницы после выполнения вашей логики:

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

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

Использование view не работает, так как вы загружаете файл, а не страницу.

+0

Это не работает: /. браузер продолжает загружаться, наконец, URL установлен, но страница не загружается. это код, который я использовал: Route :: get ('/ home_done', function() { return redirect ('home_done # 3rdPage'); }); –

+0

Это создает обратный вид. Вы должны использовать перенаправление в другом месте. Храните 'home()' как есть. –

+0

Niraj Shah вы можете показать полный код. что вы имеете в виду? –

0

Вам необходимо изменить свое поведение в JS, когда пользователь приходит на вашу страницу без #, считая его равным #firstpage.

и в вашем html управлять всеми страницами путем правильного создания URL-адресов с помощью #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> 
+0

Это способ установить ссылки для слайдов по контенту, но мне нужен способ перехода на определенную часть страницы по мере ее загрузки. –