Po prostu potrzebuję prostej funkcji, która przeszuka bieżący URL pod kątem ciągu znaków (np. "Natura"), a następnie doda klasę do obiektu. Wciąż znajduję sposoby wyszukiwania zapytania, ale chcę przeszukać cały adres URL. Jeśli to możliwe, bez jQuery. Jeśli nie, jQuery zadziała.proste javascript: adres URL wyszukiwania dla łańcucha, zrób coś
Odpowiedz
można uzyskać URL z window.location.href
i szukać go jednak lubisz:
var location = window.location.href;
if(location.indexOf("whatever") > -1) {
//Do stuff
}
window.location
zwraca Location
obiekt, który ma właściwość href
zawierający cały adres URL strony.
Najprostszym rozwiązaniem jest coś takiego:
window.location.href.indexOf('nature')
Że wróci -1
jeśli ciąg nie zostanie znaleziony. W przeciwnym razie zwraca indeks ciągu wewnątrz ciągu URL.
Korzystanie regexes jako alternatywę:
if (window.location.toString().match(/nature/)) {
yourobj.className = 'newclass';
}
Jeśli szukasz wartości w QueryString, można spróbować to:
var searchIndex = window.location.search.indexOf("nature");
W przeciwnym razie, można to zrobić:
var searchIndex = window.location.href.indexOf("nature");
można też to zrobić:
var searchIndex = window.location.href.search("/nature/");
Aby sprawdzić, czy słowo zostało znalezione, można to zrobić:
if (searchIndex > -1)
//logic here
myślę, że ten powinien dać dobry punkt wyjścia. JSFiddle jest dostępna tutaj.
<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');
Haszysz w adresie URL spowodowały problemy dla mnie, więc użyłem zamiast "?".
Jako przykład powiedzmy, że mam URL: http://example.com?someString
Najpierw pobierane URL: "?"
var activeURL = window.location.href;
Wtedy biorę wszystko z indeksem + 1 (ponieważ nie chcę dodawać "?").
var activeItem = aactiveURL.substring(activeUrl.indexOf('?') + 1, activeURL.length);
activeItem będzie "someString"
- 1. Szyny link_to: Zrób coś po potwierdzeniu
- 2. jQuery Mobile - Zrób coś na ładowanie strony
- 3. Java: zrób coś x procent czasu
- 4. Kliknij to LUB, następnie zrób coś.
- 5. Uzyskaj adres URL strony głównej w javascript dla przekierowania
- 6. Jak zmienić aktualny adres URL w javascript?
- 7. Tablica JavaScript na adres URL kodowany
- 8. Zdekoduj adres URL do tablicy, a nie do łańcucha znaków
- 9. Załaduj adres URL wyszukiwania w przeglądarce z programu Visual Studio
- 10. Jak skomponować adres URL do odwrotnego wyszukiwania obrazów Google?
- 11. Sprawdź, czy wiele funkcji jest prawdą, a następnie zrób coś.
- 12. Proste JavaScript IDE
- 13. Proste narzędzie do wyszukiwania plików tekstowych?
- 14. Podziel ciąg z PowerShell i zrób coś z każdym tokenem
- 15. Jak analizować adres URL Zend dla parametrów?
- 16. Udział Facebooka "klikalny" adres URL url
- 17. Ucieczka i adres URL
- 18. jquery: jeśli (miejsce docelowe) jest potomkiem (".wrapper"), to (zrób coś)
- 19. Zrób coś, jeśli nic nie znalazłeś z .find() mongoose
- 20. Angular 2: Zrób coś z @ Input wewnątrz Component
- 21. Poczekaj, aż elementy HTML otrzymają klasę, a następnie coś zrób.
- 22. Android - Zrób coś * po * tekst zmienia się w EditText
- 23. Zrób pętli JavaScript Slideshow bez jQuery
- 24. Jak zmienić adres URL strony
- 25. Otwórz adres URL SSRS w nowym oknie
- 26. Konwertuj adres URL na json
- 27. Sprawdzanie, czy adres URL jest uszkodzony w JavaScript
- 28. Przerwij adres URL na jego składniki
- 29. Używanie adresu URL strony internetowej dla SUGGEST_COLUMN_ICON_1 dla sugestii wyszukiwania
- 30. Poinformuj adres URL Paypal