Веб-бағдарламадан javascript арқылы мобильді сафариде ашу үшін сілтеме жасаңыз

IOS веб-бағдарламасында window.open() деп қоңырау шалған кезде, бет ұялы сафардың орнына веб-бағдарламада ашылады.

Веб-бетті мобильді сафариге қалай ашуға болады?

Note: Using straight links is not an option.

35
Сіз stackoverflow.com & quot; ; target = «_ blank»> SO дегенді білдіреді > жұмыс істемейді?
қосылды автор JOM, көзі

2 жауаптар

Бұл мүмкін. IOS5 оқшау веб-бағдарламасы арқылы сыналды:

HTML:

<div id="foz" data-href="http://www.google.fi">Google</div>

JavaScript:

document.getElementById("foz").addEventListener("click", function(evt) {
    var a = document.createElement('a');
    a.setAttribute("href", this.getAttribute("data-href"));
    a.setAttribute("target", "_blank");

    var dispatch = document.createEvent("HTMLEvents");
    dispatch.initEvent("click", true, true);
    a.dispatchEvent(dispatch);
}, false);

Can be tested here: http://www.hakoniemi.net/labs/linkkitesti.html

63
қосылды
IOS 8 жүйесінде жұмыс істемейді
қосылды автор jjxtra, көзі
Бұл мен үшін iOS 9.2 оқшау қосымшасында жұмыс істемейді. Мен өзімді сезінетін алмада бір нәрсе дербес қосымшаларды ашады.
қосылды автор Monkey King, көзі
@Jim, yep, жұмыс істемейді 8.3.
қосылды автор orkenstein, көзі
редакция: IE-да жұмыс істемейді.-
қосылды автор rorypicko, көзі
Бұл iOS 6, 7 және 8-де жұмыс істейді, мен сынап көрген барлық Android (әртүрлі осьтердегі 6-ға жуық құрылғы) және жұмыс үстелі браузерлері (хром, firefox, яғни сафари, опера) (бұл код басқа біреуден a.setAttribute («target», FB.UA.nativeApp ()? «_self»: ​​«_blank» деген мақсатты өзгерте аласыз) «); сілтемелерді жұмыс істейді, бірақ өздігінен! Сізге Facebook JavaScript қосылғанын қамтамасыз ету!
қосылды автор rorypicko, көзі
Бастапқы оқиға соққы емес болғанда ол жұмыс істемейді. Мысалы, селектор өзгергеннен кейін, таңдалған опцияға байланысты сілтемені ашыңыз.
қосылды автор ccsakuweb, көзі
Бұл iOS 4.3.3 ішіндегі Facebook қолданба браузерінде жұмыс істемейді.
қосылды автор kixorz, көзі
Бірақ ашылған терезеден мәнді қайтарғым келгенде, ол жұмыс істемейді
қосылды автор Bhavik Ambani, көзі
@valmar, сіз дұрыссыз. Бұл мысалда қателер табылды, мен оларды тіркедім.
қосылды автор zvona, көзі
Мен оны iOS қолданбасының браузерінде инстаграмда жұмыс істей алмадым, барлығына жұмыс мысалы бар ма?
қосылды автор Agu V, көзі
Naver Line қолданбасында сілтемелермен жұмыс істемейді. @chun iOS7-де жұмыс істейтін демо-сілтеме бөлісе аласыз ба?
қосылды автор PassKit, көзі
Бұл iOS 11 жүйесінде жұмыс істемейді. Ол ендірілген UIWebView ішіндегі сілтемесін ашады.
қосылды автор Axeva, көзі
Webapp режимінде бастапқы экранда сақталған веб-бет үшін iOS 8.3 ішінде сыналды. Жұмыстар.
қосылды автор Design by Adrian, көзі
HTML5 толық экрандағы оқшау веб-бағдарлама ішіндегі iOS 8.3 ішінде жұмыс істеді. Рахмет!
қосылды автор JoLoCo, көзі
<div id = «foz» data-href = «http://www.google.fi»> Google </div> - <div>/code> және оны арқылы жабу өте мағынасы жоқ. Соңында дегеніміз не?
қосылды автор Timo, көзі
Facebook қолданбасының браузері үшін маған жұмыс істемейді. Мен жартылай колонлы @ докерді жөндедім.
қосылды автор Jeremy Haile, көзі
Бұл iOS 8.3 нұсқасы бойынша мүмкін емес сияқты. Басқа кім?
қосылды автор Jim, көзі
@Napalm var dispatch = ... жолының соңында қос нүкте қосқандығын тексеріңіз
қосылды автор laker, көзі
қазір жұмыс істемейді? Iphone5 UIWebView-те көрдім, шертілгеннен кейін, Google беті Safari емес, сол көріністе ашылады.
қосылды автор LetBulletFlies, көзі
Сіз, құрметті сэр, таза гений. Құдай сені және сенің отбасыңды жарылқасын.
қосылды автор Karan, көзі
Ол іс-шарадағы оқиғаларды тыңдаушыны үлестіріп, мысалы, мысалы, мысалға келтіреді. Бірақ мен осы кодты javascript-тан (мысалы, webgl-ді басқанда) шақыруға тырысқанда - ештеңе ашпайды.
қосылды автор Selirion, көзі
Менің алдыңғы пікірлерім: iOS 10.1, мысал жақсы жұмыс істейді, бірақ мен оны div-қа емес, webgl-нің батырмасынан басу арқылы тырысып көргенде - ештеңе болмайды. Оны шешу үшін «a.setAttribute (» target «,» _blank «)» және a.dispatchEvent (жаңа MouseEvent («click», {'view': window, 'bubbles': шын, 'cancelable': шын)););) ;. Бұл жаңа Safari терезесін ашады. Бұл жағдайда неге мақсатты = _блантты қажет етпейтінін мүлдем білмеймін.
қосылды автор Selirion, көзі
Өте жақсы шешім ... және содан кейін iOS 7 болды :(
қосылды автор Matt Bontrager, көзі
Мен үшін жұмыс істемейді - iOS 8.4.1
қосылды автор bboydev, көзі
Ол менің iOS7-де жұмыс істейді.
қосылды автор David, көзі
IOS 7.1 жүйесіндегі жұмыс расталған
қосылды автор Chun, көзі
Бұл google.com сайтына барғанда жұмыс істейді. Facebook, stack overflow және т.б. барлық жаңа терезе ашу үшін gmail қолданбасының ішінде ашық. Мен бірдеңе жетіспеймін бе?
қосылды автор bkopp, көзі

Turns out it is NOT POSSIBLE to escape the iOS web app with a JavaScript window.open(). If you want a link to open in mobile safari you have to use links.

8
қосылды
ойлап табу керек пе? iOS ішіндегі chrome/операдан сафари ашу үшін сілтемесіне ие болғым келеді
қосылды автор unsynchronized, көзі