Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Jak zmienic ten kod
Forum PHP.pl > Forum > Przedszkole
Maze123987
Jak zmienic ten kod wyszukiwarki

  1. <input type="text" id="input">
  2. <div id="images">
  3. <img src="#" alt="Nazwa A">
  4. <img src="#" alt="Nazwa B">
  5. <img src="#" alt="Nazwa C">
  6. <img src="#" alt="Nazwa D">
  7. </div>
  8.  
  9. document.getElementById('input').onkeyup = function(){
  10. var els, i, el;
  11. els = document.getElementById('images').getElementsByTagName('img');
  12. for(i=0; el=els[i++]; )
  13. if( el.alt.toLowerCase().indexOf(this.value.toLowerCase() ) == -1)
  14. el.style.display = 'none';
  15. else
  16. el.style.display = '';
  17. }


aby zamiast wyszukiwać w <img src...> szukał w iframe'ach
<iframe src="#" name="Nazwa D"> </iframe>
?

Probowalem za pomoca atrybutu "name" i "id" w <iframe>, ale niestety wyszukiwarka "nie czyta" wydaje mi sie, ze trzeba zmienic cos w js

  1. document.getElementById('input').onkeyup = function(){
  2. var els, i, el;
  3. els = document.getElementById('images').getElementsByTagName('img');
  4. for(i=0; el=els[i++]; )
  5. if( el.alt.toLowerCase().indexOf(this.value.toLowerCase() ) == -1)
  6. el.style.display = 'none';
  7. else
  8. el.style.display = '';
  9. }
morbic
[JAVASCRIPT] pobierz, plaintext
  1. els = document.getElementById('images').getElementsByTagName('img');
[JAVASCRIPT] pobierz, plaintext


getElementsByTagName('img')
Maze123987
Tak tez próbowałem:

  1. <input type="text" id="input">
  2. <div id="images">
  3.  
  4. <iframe src="http://v3.my-fantasy.net/game/view.php?t=a&id=1" alt="nazwa C"></iframe>
  5. <iframe src="http://v3.my-fantasy.net/game/view.php?t=a&id=175" alt="nazwa A"></iframe>
  6. <iframe src="http://v3.my-fantasy.net/game/view.php?t=a&id=14" alt="nazwa B" ></iframe>
  7. </div>
  8.  
  9. document.getElementById('input').onkeyup = function(){
  10. var els, i, el;
  11. els = document.getElementById('images').getElementsByTagName('iframe');
  12. for(i=0; el=els[i++]; )
  13. if( el.alt.toLowerCase().indexOf(this.value.toLowerCase() ) == -1)
  14. el.style.display = 'none';
  15. else
  16. el.style.display = '';
  17. }


Niestety również nie działa

Próbowałem juz chyba wszystkiego i nic nie chce zadziałać iframe'y są włączone, ale jak wpisuje przypisana nazwe do wyszukiwarki to nie działa (nie pokazuje sie tylko ten wyszukiwany element)
Ma ktoś jakiś pomysł?
morbic
Najprościej z użyciem jQuery:

[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function() {
  2. $("#input").keyup(function() {
  3.  
  4. var inp = $(this);
  5. $("iframe").each(function() {
  6. if ($(this).attr("alt").toLowerCase().indexOf(inp.val().toLowerCase() ) == -1) {
  7. $(this).hide();
  8. } else {
  9. $(this).show();
  10. }
  11. });
  12.  
  13. });
  14. });
[JAVASCRIPT] pobierz, plaintext


Na pewno da się cały proces jeszcze uprościć, ale na szybko przepisałem tylko z pamięci na jQuery. Niesprawdzane.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.