Chcę ukryć element <h1>
za pomocą zwykłego javascript, a nie jQuery, bez dodawania do tagu id="whatever"
lub class="whatever"
. czy to możliwe?
Dlaczego nie mogę po prostu dodać id = "whatever" do tagu?
Używam UIButton w xCode, który po kliknięciu wstrzykuje javascript do UIWebView. Wewnątrz tego interfejsu UIWebView znajduje się element H1 znajdujący się na stronie internetowej, do której nie mam dostępu, aby dodać <h1 id="whatever">
. Mam nadzieję, że to ma sens.Ukryj element H1 za pomocą JavaScript
Odpowiedz
document.getElementsByTagName('h1')[0].style.display = 'none';
Zauważ, że spowoduje to błąd, jeśli nie ma "H1". Uważaj więc, aby użyć go w globalnym skrypcie. – David
można użyć getElementsByTagName
document.getElementsByTagName("h1")
Ale będzie to dostęp do wszystkich h1
elementy, tak aby być bardziej konkretny niego dostęp przez index
jak ten
document.getElementsByTagName("h1")[0].style.display = "none";
[w3fools] (http://www.w3fools.com). Ta strona jest pełna niedokładności. – Cerbrus
użytkowania getElementsByTagName
aby ukryć najpierw h1
na swojej stronie:
document.getElementsByTagName("h1")[0].style.display = "none";
// ^index 0, so that's the first `h` that's found.
lub je ukryć wszystko:
var headers = document.getElementsByTagName("h1");
for (var i = 0, l = headers.length; i < l; i++;) {
headers[i].style.display = "none";
}
lub nawet jeszcze lepiej, jeśli można modyfikować CSS:
h1{
display:none;
}
dla rozwiązań JavaScript, proszę pamiętać, że tylko oni będą działa po załadowaniu DOM.
Dodaj słuchacza domready
zdarzeń, takich jak to:
window.addEvent('domready', function() {
// modify your DOM here.
});
'window.onload' jest bardzo wolny, a użycie go zagwarantuje nieprzyjemny skok strony. Lepiej umieścić skrypt poniżej "H1". – David
@ David: to też zadziała. Czy wiesz, czy zdarzenie 'domready' jest lepsze? – Cerbrus
@Cerbus tak, znacznie lepiej. 'window.onload' również czeka, aż wszystkie obrazy w dokumencie zakończą ładowanie. Jednak umieszczanie znaczników skryptów poniżej elementów DOM, które będą manipulowane, jest zawsze najszybsze (ale nie zawsze praktyczne). – David
Można użyć getElementsByTagName
metody:
var h = context.getElementsByTagName('h1');
for (var i = h.length; i--;) {
h[i].style.display = 'none';
}
Gdzie context
jest document
lub bardziej konkretny węzeł nadrzędny chcesz wyszukać swoje nagłówki wewnątrz.
Istnieje jednak lepsze rozwiązanie. Można dodać konkretną klasę do jakiegoś węzła nadrzędnego i ukryć nagłówków podrzędnych z CSS:
.without-headers h1 {display: none;}
OP stwierdził, że nie może dodać "id" do swoich tagów. Myślę, że można bezpiecznie założyć to samo dla klas: _ "Wewnątrz tego UIWebView jest element H1, który znajduje się na stronie internetowej, do której nie mam dostępu" _ – Cerbrus
Miałem na myśli, że mógłby dodać klasę do węzła nadrzędnego za pośrednictwem JS. context.className = "bez nagłówków" '. Powinienem to powiedzieć. – dfsq
To opcja, tak. Dzięki za wyjaśnienie^_^ – Cerbrus
tylko niewielkich zmian w kodzie dfsq za
var h = document.getElementsByTagName('h1');
for (var i =0; i<h.length; i++) {
document.getElementsByTagName('h1').item(i).style.display = 'none';
}
Iterowanie przez 'document.getElementsByTagNameNS ('h1')' _AND_ pobieranie 'document.getElementsByTagNameNS ('h1')' w pętli _same_ for? Nie, tylko ... Nie. Dlaczego również 'getElementsByTagNameNS'? Dlaczego 'item (i)'? To tak jakbyś starał się uniknąć celowej konwencji. – Cerbrus
- 1. Pokaż/ukryj skrypt za pomocą javascript
- 2. Ukryj wszystkie elementy div za pomocą javascript
- 3. Jak zdobyć element dzwoniącego za pomocą JavaScript?
- 4. Uderz element za pomocą Id w JavaScript
- 5. Pokaż/ukryj obraz za pomocą JavaScriptu
- 6. Ukryj realizacja za pomocą wskaźnika (Pimpl idiom)
- 7. Zmiana wartości elementu h1 w formularzu przy użyciu JavaScript
- 8. Czy można określić, kiedy element został wyrenderowany za pomocą JavaScript?
- 9. Jak usunąć element nadrzędny za pomocą zwykłego javascript ..!
- 10. Jak wybrać element wejściowy według wartości za pomocą javascript?
- 11. Jak zamienić element DOM w miejscu za pomocą JavaScript?
- 12. Dodaj element formularza dynamicznie za pomocą javascript - nie przesyłając
- 13. Konwersja tekstu na wybrany element za pomocą JavaScript
- 14. Ukryj doskonałe linie siatki za pomocą EPPLUS
- 15. Ukryj div za pomocą tylko CSS
- 16. Ukryj ślad CasperJS za pomocą Google Analytics
- 17. Ukryj tekst wykraczający poza element DIV
- 18. Ukryj ukryty element ... Jak źle?
- 19. Jak pozycjonować element w nagłówku kursu (H1, H2 itd.)?
- 20. Ukryj wiele elementów za pomocą jQuery i uzyskaj jeden oddzwonienie
- 21. javascript: W jaki sposób obrócić tekst za pomocą javascript?
- 22. Jak otworzyć wybrany element za pomocą jquery
- 23. Ukryj element tylko na urządzenia przenośne - Interfejs semantyczny
- 24. Jak ukryć element nadrzędny za pomocą jquery?
- 25. Zajęcia w JavaScript za pomocą prototypu
- 26. JavaScript: Ukryj elementy według nazwy klasy
- 27. JavaScript - Ukryj div przy starcie (ładowanie)
- 28. Pokaż/Ukryj wielu div z wybierz za pomocą jQuery
- 29. JavaScript pokaż/ukryj granice/linie
- 30. JavaScript, Jasmine, ukryj jaśminowe specyfikacje
document.getElementsByTagName ("H1") [0] .style.display = "none"; –
http://jsbin.com/ubeduj/1/edit – C5H8NNaO4
@harsha: to nie zadziała. 'getElementsByTagName()' zwraca 'tablicę' elementów. Zapomniałeś indeksu. – Cerbrus