Внешние ссылки с использованием Phonegap/Telerik Platform/Cordova без OnClick на ссылку

Мы используем Telerik Platform, который работает на Cordova. Мы динамически извлекаем контент из CMS, который показывает часть нашего контента в нашем приложении. Наши авторы хотят добавлять ссылки в контент, но, разумеется, я не хочу, чтобы им приходилось ставить "клик" на ссылки в Rich Text Editor в CMS.

Есть ли способ, позволяющий нашим авторам просто вводить ссылки с добавленным к ним классом CSS или что-то в этом роде, чтобы я мог захватывать щелчок, используя jQuery или что-то подобное, и чтобы ссылка переводилась в приложении Cordova, чтобы открыть "_системный "браузер.

В конечном итоге я хочу, чтобы мои ссылки выглядели так, чтобы их авторы могли использовать при вводе их в CMS:

<a href="http://mylink.com" target="_blank" class="externalLink">My external link</a>

Но в приложении PhoneGap/Telerik Platform я хочу, чтобы ссылка открывалась в браузерах системы. В настоящее время это не так, он открывается в текущем веб-просмотре и блокирует приложение на веб-странице без какого-либо возврата.

Я пробовал это до сих пор, но безрезультатно. Кажется, что "href" просто запускает браузер, а затем приложение попадает в браузер веб-просмотра и не вернется без принудительного выхода из приложения.

   //IN THE APP JS ITSELF
   //Don't even think this works
 $('a.externalLink, a[target="_blank"]').on('click', function(e){
   e.preventDefault();// Does not prevent default
   console.log("trying to get system");//Does not console
   alert("prevent default"); // Does not alert
   window.open($(this).attr('href'), '_system');
    return false;
 }); 

Кажется, что ссылка, которая вводится в CMS, просто указывает на ссылку 'href' и игнорирует вышеуказанный jQuery. Любой способ поймать это прежде, чем веб-представление поймает это?

1 ответ

Я нашел ответ в том случае, если кто-то еще хочет сделать это, БЕЗ размещения события onclick на самом href.

   $(document).on('click', 'a[target="_system"],a[target="_blank"]', function (e) {
        e.preventDefault();
        var url = this.href;
        window.open(url,"_system");                    
});
Другие вопросы по тегам