Thanks Rudi, it works great for phone. But when I create another css for email the css doesn't work. Here is phone code works OK:
Here is email code similar, it hide the email with text OK, just the css display: none; not working<script>
{literal}
$(document).ready(function(){
var phones = $('div[id*="phone"] .value a');
$(phones).each(function(){
var phone = $(this);
var default_value = phone.text();
var text = {/literal}'{$lang.click_to_view}'{literal};
phone.text(text).removeAttr('href').toggleClass('m ask_number');
phone.css('cursor', 'pointer').css('display', 'block');
$(phone).filter('.mask_number').click(function(sho w){
$(this).text(default_value);
$(this).attr('href', 'tel:' + default_value).toggleClass('mask_number');
show.preventDefault();
$(phone).unbind('click').bind('click');
});
});
});
{/literal}
</script>
Here is the css:<script>
{literal}
$(document).ready(function(){
var emails = $('div[id*="email"] .value a');
$(emails).each(function(){
var email = $(this);
var default_value = email.text();
var text = {/literal}'{$lang.click_to_view}'{literal};
email.text(text).removeAttr('href').toggleClass('m ask_text');
email.css('cursor', 'pointer').css('display', 'block');
$(email).filter('.mask_text').click(function(show) {
$(this).text(default_value);
$(this).attr('href', 'mailto:' + default_value).toggleClass('mask_text');
show.preventDefault();
$(email).unbind('click').bind('click');
});
});
});
{/literal}
</script>
Does email use different css?.phone .value a,
.email .value a {
display: none;
}