Sólo necesito una función simple que buscará la URL actual de una cadena (es decir, "la naturaleza") y después se agregará una clase a un objeto. Sigo buscando formas de buscar en la consulta, pero quiero buscar en toda la url. Si es posible, sin jQuery. De lo contrario, jQuery funcionará.Javascript simple: url búsqueda de cuerda, hacer algo
Respuesta
Usted puede obtener la dirección URL con window.location.href
, y buscarla como usted quiera:
var location = window.location.href;
if(location.indexOf("whatever") > -1) {
//Do stuff
}
window.location
devuelve un objeto Location
, que tiene una propiedad href
que contiene la dirección URL de la página.
El enfoque más básico es algo como esto:
window.location.href.indexOf('nature')
que devolverá -1
si no se encuentra la cadena. De lo contrario, devuelve el índice de la cadena dentro de la cadena URL.
El uso de expresiones regulares, como una alternativa:
if (window.location.toString().match(/nature/)) {
yourobj.className = 'newclass';
}
Si estás en busca de un valor en la cadena de consulta, puede intentar esto:
var searchIndex = window.location.search.indexOf("nature");
De lo contrario, usted puede hacer esto:
var searchIndex = window.location.href.indexOf("nature");
también puede hacer esto:
var searchIndex = window.location.href.search("/nature/");
Para comprobar si se ha encontrado la palabra, usted puede hacer esto:
if (searchIndex > -1)
//logic here
Creo que éste debe darle un buen punto de partida. JSFiddle está disponible aquí.
<div id="test">Some text</div>
.red
{
background-color: #FF0000;
}
function handler(url, textToMatch, objectToChange, classToAssign)
{
if (url.search(textToMatch) != -1)
{
objectToChange.className = classToAssign;
}
}
var url = 'http://www.some-place.com&nature'; //window.location.href in your case
var div = document.getElementById('test');
handler(url, 'nature', div, 'red');
El hash de la URL causado problemas para mí, así que en vez he usado un "?".
A modo de ejemplo digamos que tengo la URL: http://example.com?someString
Primero recupera la URL: "?"
var activeURL = window.location.href;
entonces tomo todo, desde el índice de + 1 (porque no me importa incluir "?") En adelante.
var activeItem = aactiveURL.substring(activeUrl.indexOf('?') + 1, activeURL.length);
activeItem será "someString"
- 1. Búsqueda y reemplazo de JavaScript simple
- 2. búsqueda del sitio simple con DuckDuckGo
- 3. cuerda dividida por el guión en Javascript
- 4. ¿Búsqueda simple por valor?
- 5. Búsqueda simple en Django
- 6. ¿Limpiar URL para consulta de búsqueda?
- 7. Cómo hacer búsqueda URL inversa en aplicación reutilizable Django namespaced
- 8. Bug con RegExp en JavaScript al hacer la búsqueda global
- 9. expresión regular de Javascript: hacer coincidir algo hasta algo (si existe)
- 10. does minHeight ¿hacer algo?
- 11. JavaScript idioma: algo función &&()
- 12. Problema de búsqueda de eclipse simple
- 13. Algo simple pregunta matriz PHP intersección
- 14. jQuery: ¿qué es "prohibido" hacer en simple Javascript
- 15. ¿Cuerda partida en Lua?
- 16. Menú desplegable de JavaScript simple
- 17. Búsqueda de hash simple por valor
- 18. Cómo implementar una búsqueda de cadenas simple
- 19. Javascript búsqueda y reemplazo
- 20. URL bonitas para las páginas de búsqueda
- 21. ¿Hay una manera simple de crear una tabla de búsqueda de JavaScript?
- 22. ¿Cómo hacer mazos de cuerda más rápido en emacs?
- 23. búsqueda de texto en javascript?
- 24. ¿Cómo hacer una URL privada?
- 25. Haga algo javascript antes de asp.net anypostback
- 26. Bash shell `if` comando devuelve algo` then` hacer algo
- 27. JavaScript análisis de URL
- 28. Página de búsqueda simple de Backbone: ¿cómo lo harías?
- 29. Simple JavaScript/HTML Slideshow
- 30. Métodos de cifrado de archivos Php. ¿Existe algo simple?