enlace al encabezado en una página diferente y hacer que el párrafo sea visible desde el enlace de pie de página mientras no esté en la página vinculada a

Esta pregunta es una continuación de esta pregunta: ¿cómo puedo vincular un encabezado y hacer que un evento de clic se active cuando se hace clic en JavaScript?

Básicamente, bash vincular desde el pie de página cualquier página (el pie de página es el mismo en todas las páginas) y hago dos cosas: moverme a la ubicación adecuada en la página y mostrar un párrafo previamente oculto (mostrar: ninguno;) (p) .

Aquí está el problema: en el enlace de arriba no hay ninguna solución provista que permita la situación en la que NO se encuentre en la página de servicios (la página donde van los enlaces discutidos). En otras palabras, si no se encuentra en la página de Servicios y hace clic en un enlace a la página de servicios, se llama a la js y todo sucede de la forma en que se supone, excepto que el párrafo no se expande. Si hago clic en uno de los enlaces de pie de página de servicio mientras estoy en la página de servicios todo funciona bien.

¿Cómo puedo obtener la p para mostrar: bloquear; cuando no estoy en la página de servicios (la página donde también estoy enlazando)?

Intenté window.location, pero eso no pareció funcionar. También probé algunas soluciones que encontré en línea para retrasar el js hasta que carga la página, pero tampoco funcionó.

Gracias por adelantado.

ps – Me gustaría ver si hay una solución de javascript, por lo que no hay jquery por favor.

margen:

altservice1

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


altservice2

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

js:

 var target, sericeDiv, pToDisplay function toggle(link) { target = link.getAttribute("data-toggle"); sericeDiv = document.getElementById(target) pToDisplay = sericeDiv.getElementsByTagName('p')[0] document.getElementById(target).className = "service-desc"; pToDisplay.className = "p-on-white service-desc" } 

css:

 .p-hide{ display: none; } 

No entendí completamente la pregunta, pero podría establecer el href como # establecer un atributo de datos, algo así como un data-href="your/location.html" y crear un método y configurarlo onclick=yourProcess() y cuando necesita redirigir a obtener el atributo de datos si desea retrasar algo que podría usar setTimeout()

Deberías echar un vistazo a data-attrib , timing events

Espero que esto ayude…

Vea mis comentarios a continuación, pero esto lo resolvió para mí. Puedo hacer clic en los enlaces de pie de página que van a la página de servicios ya sea que esté en la página de servicios o no.

Gran crédito es para MikeVelazco. Sin sus comentarios no podría haber llegado tan lejos.

margen:

 

altFinancial Analysis, Enterprise Performance, & Reporting

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

altSoftware, Systems, & Office Automation Solutions

xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

js:

 // link from footer link to p in services that needs to be displayed when you are on the services page already function toggle(link) { var target, sericeDiv, pToDisplay; target = link.getAttribute("data-toggle"); sericeDiv = document.getElementById(target) pToDisplay = sericeDiv.getElementsByTagName('p')[0] document.getElementById(target).className = "service-desc"; pToDisplay.className = "p-on-white service-desc" } //when a footer link is clicked that goes to a service on the service page //this makes the p below the heading display function openP(){ var theURL = document.URL; var gotArray = theURL.split("#"); var pToDisplay = document.getElementById("p-" + gotArray[1]); pToDisplay.className = "p-on-white service-desc"; } window.onload = openP(); 

css:

 .p-hide{ display: none; }