2016-04-06 21 views
0

Yeni bir pencerede bir web sayfasını açan bir kisok uygulaması oluşturmaya çalışıyorum. Ve bu yeni pencerede, sadece bu web sayfasının izin verildiğini eklemek istiyorum. Ancak, krom-args açık işlevde geçerli bir seçenek değil. Yani bu seçeneğe izin verilmezse, bu sorunu nasıl çözerim?Kiosk ve krom-args ile yeni açılmalar açın

var new_win = gui.Window.open('https://github.com', { 
    kiosk: true, 
    'chromium-args' : '--host-rules="MAP * github.com"' 
}); 

cevap

1

Sen window event new-win-policy gerekir:

function (frame, url, policy) {} 

Yayılan yeni bir pencere bu pencereden ya da çocuk iframe, örneğin talep edildiğinde kullanıcı, _blank hedefiyle bir bağlantıyı tıklar.
  • ignore()

    : isteği görmezden navigasyon olmayacak

    politikası aşağıdaki yöntemlerle bir nesnedir.

  • forceCurrent():
  • forceNewWindow() dış program ile indirilebilen ya da açık olması için zorlamaya: bağlantı kuvvet yeni pencerede
  • açılacak için zorlamaya
  • forceDownload() aynı çerçevede açılacak
  • forceNewPopup(): yeni açılan pencerede
  • setNewWindowManifest(m) açılacak bağlantının mecburen: yeni açılan pencerede ilgili seçenekleri belirlemek. Nesne m, Manifest formatında (örn. {"frame" : false}) pencere alt alanıyla aynı biçimde. v0.11.3 beri

Kod yanındadır:

var new_win = gui.Window.open('https://github.com', { kiosk: true }); 
new_win.on('new-win-policy', function (frame, url, policy) { 
    policy.ignore() 
}); 
+0

sayesinde ben buna bakar. Ancak, kullanıcı aynı alanda yeni bir sayfaya gidebilir mi? http://www.example.com/index.html - index2.html? –

+0

Bunun işe yaradığını sanmıyorum ... Hala yeni bir pencere açıyor ... –

+0

Çalışıyor,% 100, kullandım. Nwjs hangi sürümü? Nwjs'nin bazı sürümlerinde hatalar olabilir (0.13.X sürümlerinde ve bazı çok eski sürümlerde bazı problemler vardı) .New nwjs veya 0.12.3'ü deneyin. – VoidVolker

İlgili konular