2010-05-25 7 views
1

J'ai une barre de navigation latérale et lorsque vous cliquez sur les liens, elle envoie un formulaire. L'action forms ouvre une autre page (target _blank). Mon problème est que je dois ouvrir une fenêtre avant que cette page vierge s'ouvre et la garder ouverte suffisamment longtemps pour que l'utilisateur la lise ou au moins la voir d'abord et la fermer si elle le souhaite. J'ai créé une fonction qui ouvre la popup sur l'événement onclick du lien. On dirait ceci:Puis-je définir la durée de mise au point d'une fenêtre contextuelle?

<li><a href="JavaScript:document.quoteform.submit()" onclick="popUp('ag_popup.html')">Submit a Deal</a></li> 

et ma fonction ressemble à ceci:

function popUp(url) 
{ 
leftPos = 0 
topPos = 0 
if (screen) { 
leftPos = (screen.width/2) - 150 
topPos = (screen.height/2) - 250 
} 
newwindow=window.open(url,'name','height=300,width=500,left='+leftPos+',top='+topPos); 
if (window.focus) {newwindow.focus()} 
return false;} 

Est-ce que quelqu'un sait si je peux garder mon pop-up ouvert et concentré sans ma nouvelle ouverture de page blanche en face de ce?

Vive

Répondre

0

Vous pouvez utiliser le setTimeout -Function attendre, tenir la référence dans la fenêtre contextuelle et fermez-le puis (ou laisser l'utilisateur décider!). Après cela, soumettez le formulaire de cette fonction.

Par exemple:

var newWindow=null; 
function popUp(url) 
{ 
leftPos = 0 
topPos = 0 
if (screen) { 
leftPos = (screen.width/2) - 150 
topPos = (screen.height/2) - 250 
} 
newWindow=window.open(url,'name','height=300,width=500,left='+leftPos+',top='+topPos); 
if (window.focus) {newWindow.focus()} 
setTimeout('closePopupAndSubmit()')', 5000); 
} 

function closePopupAndSubmit{ 
if(newWindow != null){ 
newWindow.close(); 
document.quoteform.submit(); 
} 
} 
Questions connexes