I have this in HTML
<div class="aplplyevent">
<input type="hidden" name="type" value="" />
<div class="hidden-div" id="hidden-div">
Here is my form that is displayd on click and the button APPLY EVENT will disappear!(As long as my form already has a button!)
</div>
<span style="display:block"><button class="btn btn-applyevent" onclick="getElementById('hidden-div').style.display = 'block'; this.style.display = 'none'">APPLY EVENT</button></span>
This in CSS:
.hidden-div {
display: none;
}
On desktop devices works fine but on iOS and Adroid my main button "APPLY EVENT" do not disappear and I have 2 buttons, the main button(who stop to dissapear) and the form button.
iOS since v8 and now Android too seems to stop support for "onclick".
Can someone please help me? I'm beginner in JS!
JSFiddle Here
The HTML onClick
is deprecated, It still continues to work in all major browsers but still its considered as a bad practice. Its good practice to have all the different code family separated. Seperate out your javascript from the HTML inline scripts, The maintenance becomes easy. So try binding the event using Javascript like below.
document.getElementById("applyEvent").addEventListener("click", function(){
document.getElementById('hidden-div').style.display = 'block';
this.style.display = 'none';
});
.hidden-div {
display: none;
}
<div class="aplplyevent">
<input type="hidden" name="type" value="" />
<div class="hidden-div" id="hidden-div">
Here is my form that is displayd on click and the button APPLY EVENT will disappear!(As long as my form already has a button!)
</div>
<span style="display:block">
<button id="applyEvent" class="btn btn-applyevent">APPLY EVENT</button></span>
Also using Jquery the code would be minimal.I personally recommend using Jquery because its Awesome. So using Jquery the same code can be rewritten as below.
$('#applyEvent').on('click',function(){
$('#hidden-div').show();
$(this).hide();
});
I think its better to use jQuery. This might get thing done.
Html
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<div class="aplplyevent">
<input type="hidden" name="type" value="" />
<div class="hidden-div" id="hidden-div">
Here is my form that is displayd on click and the button APPLY EVENT will disappear!(As long as my form already has a button!)
</div>
<span style="display:block"><button class="btn btn-applyevent" id="buton">APPLY EVENT</button></span>
JS
$(document).ready(function(){
$("#buton").on('click touchstart',function(){
$(this).hide();
$(".hidden-div").css("display","block");
});
});
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With