• Jobs
  • About Us
  • Jobs
    • Home
    • Jobs
    • Courses and challenges
  • Businesses
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

462
Views
cómo hacer una barra lateral que no se oculte después de actualizar la página hasta que el usuario la cierre manualmente

Quiero hacer que la barra lateral en la vista móvil no se desespere después de actualizar la página cuando el usuario la cierra manualmente.

El usuario puede obtener la barra lateral presionando el ícono de hamburguesa. Puede filtrar los productos desde allí, pero la pregunta es que los datos del filtro del usuario se mueven a la página siguiente o recargan y ocultan la barra lateral. Quiero que no esté oculta hasta que el usuario la cierre en una página nueva o una página actualizada. ...

¿Cómo puedo hacerlo?

aquí está el código

 <!-- this (.mobile-filter-sidebar) part will be position fixed in mobile version --> <div class="col-md-3 page-sidebar mobile-filter-sidebar pb-4" id="sidebar"> <aside> <div class="sidebar-modern-inner enable-long-words"> <div> <form action="{{url('filteradsbypackages')}}" method="get" enctype="multipart/form-data"> @foreach($data as $packages) <div class="form-check col-12 gap"> <input class="form-check-input" type="checkbox" id="featuredChk" name="promoTypeFilter" value="{{$packages->id}}" onchange="this.form.submit()"> <label class="form-check-label" for="featuredChk"> <label class="filter_doorstep">{{t($packages->short_name)}}</label> </label> </div> @endforeach </form> </div> @includeFirst([config('larapen.core.customizedViewPath') . 'search.inc.sidebar.fields', 'search.inc.sidebar.fields']) @includeFirst([config('larapen.core.customizedViewPath') . 'search.inc.sidebar.categories', 'search.inc.sidebar.categories']) @includeFirst([config('larapen.core.customizedViewPath') . 'search.inc.sidebar.cities', 'search.inc.sidebar.cities']) @if (!config('settings.list.hide_dates')) @includeFirst([config('larapen.core.customizedViewPath') . 'search.inc.sidebar.date', 'search.inc.sidebar.date']) @endif @includeFirst([config('larapen.core.customizedViewPath') . 'search.inc.sidebar.price', 'search.inc.sidebar.price']) </div> </aside> </div> @section('after_scripts') @parent <script> var baseUrl = '{{ request()->url() }}'; </script> @endsection
over 3 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Cuando el usuario abre la barra lateral, puede establecer una variable (por ejemplo: isSideBarOpen) en su almacenamiento local en "verdadero".

 window.localStorage.setItem(isSideBarOpen","true")

si el usuario lo cierra, lo establece en "falso"

 window.localStorage.setItem(isSideBarOpen","false")

cada vez que el usuario cargue tu aplicación, comprobarás

 if(window.localStorage.getItem("isSideBarOpen") === "true") { // your logic to open/close SideBar }
over 3 years ago · Juan Pablo Isaza Report

0

Creo que es mejor almacenar todos los datos relacionados con el estado de la página.

Puede almacenarlo en localStorage o evento en su base de datos.

Considerando la siguiente situación:

1- Almacene todos los datos en la base de datos en cada cambio => [es posible que tenga muchas solicitudes de estado de actualización para cada usuario]

2- Almacene todos los datos en localStorage => Guárdelos en la base de datos periódicamente mediante un temporizador o guarde los datos cuando ocurra una acción específica. [Como ejemplo cuando el usuario cierra la sesión, almacene datos en DB]

Para hacer esto puedes escribir un Javascript o Jquery

 function updateSate(args= {}) { let sate = { isSideBarOpen: documents.getElementById or get it from args, ...otherdata } //store it in localStorage using localStorage.setItem('state', JSON.stringify(state)); } //call storeState to save localStorage in DB function storeState() { send request to save it } //Read the page state from localStorage when page is loaded
over 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Show me some job opportunities
There's an error!