jQuery Simple Example
by Henry
HTML
<script src="//www.addressfinder.co.nz/assets/v2/widget.js"></script>
<label for="search_field">Address</label>
<input type='text' class='address_field' />
<div id="address">
asdfbahsjb jsahbvhjasbdv sjahbdvjhsbvjhsdb dsjkbvjhdsbveihgv kldckner k. 892-352-5235 asdfbasbiasbb bdvjasbvhasbvnmbaidvbdasbisb jhsbvisbevjhdb jbsvksbdvbsjbvsdbszx qowudvsk 1-293-343-8294 asdb askdbb sdfbv dbsibfd dbdsbvdshb vsmd. akjnfdkasv lab lsdhf 7823958462 asdsdv.
</div>
<p>Book now, call <a href="tel:01234567890">01234 567 890</a></p>
CSS
body {
padding: 5px;
}
label {
font-weight: bold;
}
input[type=text] {
width: 20em
}
p {
margin: 1em 0 0;
}
JavaScript
$(document).ready(function() {
//if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
var countrycodes = "1"
var delimiters = "-|\\.|—|–| "
var phonedef = "\\+?(?:(?:(?:" + countrycodes + ")(?:\\s|" + delimiters + ")?)?\\(?[2-9]\\d{2}\\)?(?:\\s|" + delimiters + ")?[2-9]\\d{2}(?:" + delimiters + ")?[0-9a-z]{4})"
var spechars = new RegExp("([- \(\)\.:]|\\s|" + delimiters + ")","gi") //Special characters to be removed from the link
var phonereg = new RegExp("((^|[^0-9])(href=[\"']tel:)?((?:" + phonedef + ")[\"'][^>]*?>)?(" + phonedef + ")($|[^0-9]))","gi")
function ReplacePhoneNumbers(oldhtml) {
//Created by Jon Meck at LunaMetrics.com - Version 1.0
var newhtml = oldhtml.replace(/href=['"]callto:/gi,'href="tel:')
newhtml = newhtml.replace(phonereg, function ($0, $1, $2, $3, $4, $5, $6) {
if ($3) return $1;
else if ($4) return $2+$4+$5+$6;
else return $2+"<a href='tel:"+$5.replace(spechars,"")+"'>"+$5+"</a>"+$6; });
return newhtml;
}
$("#address").html(ReplacePhoneNumbers($("#address").html()))
$("a[href^='tel:']").click(function(event){
event.preventDefault();
link = $(this).attr('href');
tracklink = link.replace("tel:","")
tracklink = tracklink.replace(spechars,"")
if(tracklink.length == 10) {tracklink = "1" + tracklink}
ga('send', 'event', 'Contact', 'Phone', tracklink);
//_gaq.push(['_trackEvent', 'Contact', 'Phone', tracklink]);
setTimeout(function() {
window.location = link;
},300);
});
//}
});