• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Przycisk "Wyświetl numer"

Object Storage Arubacloud
0 głosów
162 wizyt
pytanie zadane 6 lipca 2020 w HTML i CSS przez Hardwell Dyskutant (8,980 p.)
zamknięte 9 lipca 2020 przez Hardwell

Witam, szukałem w necie i nie znalazłem, a siedzę nad tym od 2 godzin, ktoś wie w jaki sposób zrobić taki przycisk jak poniżej? (Numer jest schowany, pokazuje się kiedy klikniemy w przycisk)

przed:

po:

komentarz zamknięcia: Comandeer rozwiązał, dzień jak co dzień :D

2 odpowiedzi

0 głosów
odpowiedź 6 lipca 2020 przez Comandeer Guru (601,590 p.)
wybrane 7 lipca 2020 przez Hardwell
 
Najlepsza

W najprostszej postaci byłby to przycisk, który po kliknięciu zmienia swoją zawartość, czyli addEventListener + podmiana textContent/innerHTML na nową treść.

komentarz 9 lipca 2020 przez Comandeer Guru (601,590 p.)

Prawdę mówiąc nie wiem, czemu nie działa… Ale można spróbować zmodyfikować ten kod, np:

$("<li id='l_"+marker['__gm_id']+"' class='clinic_list'>")
.html("<span class='number'>"+number+"</span><div><strong>"+v.name+"</strong><br /><span>"+v.address+"</span><div id='numb_phone' style='width: 130px; line-height: 20px; float: right;'><a href='#' class=\"reveal-number\" role=\"button\">Pokaż numer</a></div><div id=d_"+number+" class='distance'><span>"+distancenode+"</span> <span class='units'></span> <span class='time2'></span></div></div><div class='products'>"+ctype+"</div><a id='la_"+marker['__gm_id']+"' name='la_"+marker['__gm_id']+"'></a>")
.click(function(){
    infowindow.setContent(info_window_string);
    infowindow.open(map,marker);
    toggleBounce(marker);
    var currentLatLng = new google.maps.LatLng(v.lat,v.lng);
    map.setCenter(currentLatLng);           
}).appendTo("#list").find( '.reveal-number', ( evt ) => {
	var $target = $( evt.target );
	
	evt.stopPropagation();
	
	if ( !$target.hasClass( 'revealed' ) ) {
		evt.preventDefault();

		$target.prop( 'role', '' );
        $target.prop( 'href', 'tel:+48000000000' );
        $target.text( '000-000-000' );
		$target.addClass( 'revealed' );
	}
})

 

komentarz 9 lipca 2020 przez Hardwell Dyskutant (8,980 p.)
Dziwne
komentarz 9 lipca 2020 przez Hardwell Dyskutant (8,980 p.)

@Comandeer, Ten kod chyba nie działa 

1
komentarz 9 lipca 2020 przez Comandeer Guru (601,590 p.)
$("<li id='l_"+marker['__gm_id']+"' class='clinic_list'>")
.html("<span class='number'>"+number+"</span><div><strong>"+v.name+"</strong><br /><span>"+v.address+"</span><div id='numb_phone' style='width: 130px; line-height: 20px; float: right;'><a href='#' class=\"reveal-number\" role=\"button\">Pokaż numer</a></div><div id=d_"+number+" class='distance'><span>"+distancenode+"</span> <span class='units'></span> <span class='time2'></span></div></div><div class='products'>"+ctype+"</div><a id='la_"+marker['__gm_id']+"' name='la_"+marker['__gm_id']+"'></a>")
.click(function(){
    infowindow.setContent(info_window_string);
    infowindow.open(map,marker);
    toggleBounce(marker);
    var currentLatLng = new google.maps.LatLng(v.lat,v.lng);
    map.setCenter(currentLatLng);           
}).appendTo("#list").find( '.reveal-number' ).on( 'click', ( evt ) => {
    var $target = $( evt.target );
     
    evt.stopPropagation();
     
    if ( !$target.hasClass( 'revealed' ) ) {
        evt.preventDefault();
 
        $target.prop( 'role', '' );
        $target.prop( 'href', 'tel:+48000000000' );
        $target.text( '000-000-000' );
        $target.addClass( 'revealed' );
    }
})

Fakt, wkradł się babol.

 

komentarz 9 lipca 2020 przez Hardwell Dyskutant (8,980 p.)
No co ci mam więcej napisać, Dziwne jak by po twojej pomocy coś nie działało, Dzięki! Zamykam
0 głosów
odpowiedź 6 lipca 2020 przez _Pita_ Stary wyjadacz (11,410 p.)
edycja 6 lipca 2020 przez _Pita_

Ja nadałbym divovi onklicka, i za pomocą jQ zmienił klasę na taką, zawierającą numer, lub zmienił wartość diva za pomocą inner HTML (tu bez JQ)

Edit: podaję te drugie rozwiązanie poniżej:

<!DOCTYPE html>
<html>
<head>
	<title>test</title>

</head>
<body>


<div id="nr" onclick="funkcja()">Numer telefonu</div>


<script type="text/javascript">
	function funkcja() {

document.getElementById('nr').innerHTML = "123 456 789"
	}

</script>



</body>
</html>

 

komentarz 6 lipca 2020 przez Comandeer Guru (601,590 p.)
W jaki sposób klasa może zawierać numer?
komentarz 6 lipca 2020 przez _Pita_ Stary wyjadacz (11,410 p.)
Dałoby się chyba pokombinować z "content"
komentarz 6 lipca 2020 przez Comandeer Guru (601,590 p.)
Tak, ale wyłącznie pod warunkiem, że treść byłaby wstawiana przy pomocy pseudoelementu, co sprawia, że tak wstawionego numeru nie dałoby się zaznaczyć.
komentarz 6 lipca 2020 przez _Pita_ Stary wyjadacz (11,410 p.)
Dlatego właśnie wspomniałem jeszcze o możliwości z innerHTML
komentarz 7 lipca 2020 przez Hardwell Dyskutant (8,980 p.)

Zamieniłem sobie to na jquery 
 

function funkcja() {
$('#nr').text('Hello world'); 
}

Ale dalej mam ten sam problem co wyżej opisałem (po naciśnięciu strona wraca na samą górę i nic się nie dzieje z tym przyciskiem)

Podobne pytania

0 głosów
3 odpowiedzi 325 wizyt
pytanie zadane 4 marca 2020 w HTML i CSS przez KamQiX Dyskutant (9,090 p.)
0 głosów
1 odpowiedź 112 wizyt
pytanie zadane 16 lutego 2017 w JavaScript przez Vorex444 Dyskutant (9,610 p.)
0 głosów
1 odpowiedź 198 wizyt
pytanie zadane 26 listopada 2017 w JavaScript przez Vorex444 Dyskutant (9,610 p.)

92,579 zapytań

141,431 odpowiedzi

319,657 komentarzy

61,963 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...