场景:用于检测给定网页上的电话号码并通过锚标记突出显示电话号码的脚本。该脚本在FF和Chrome中运行良好,但在IE9中失败,抛出 SCRIPT5:拒绝访问错误。
我已经通过其他帖子,希望它能解决我的问题,但是徒劳无功。
以下是我的代码:
var regex = /\+?\d{1,4}?[-.\s]?\(?\d{1,3}?\)?[-.\s]?\d{1,4}[-.\s]?\d{1,4}[-.\s]?\d{1,9}/g;
jQuery.fn.linker = function () {
$(this).contents()
.filter(function(){return this.nodeType !== 3;})
.each(function(){$(this).linker();});
$(this).contents()
.filter(function() { return this.nodeType === 3; })
.each(function () {
$(this).replaceWith(
$(this).text().replace(regex,"<a href=\"javascript:;\">$&</a>"));});
};
$(document).ready(function () {
$('body').linker();
$( 'a' ).click( function () {
var href = $(this).text();
var tel = regex.test(href);
if ( tel ) {
//alert( 'A telephone link was clicked: ');
href = href.replace(/[(]\d[)]|[.-]/g,'');
//launchwebDialerServlet(href);
//alert(href);
//event.preventDefault();
//window.open($(this).attr('href'),"popupWindow","width=600,height=600,scrollbars=yes");
}
});
});
以下是错误的屏幕截图 我希望,我的问题很明确。