Use Top.close For Safari?
Jun 21, 2011Is anyone knows how to use top.close in javascript in safari browser?
View 3 RepliesIs anyone knows how to use top.close in javascript in safari browser?
View 3 Repliesgot an one that might prove interesting. I have a window that refuses to close in OSX/Safari 3.1 if it has any history.
Details:
I have an embedded flash app that offers links. These links will initiate a new window. I have little access to the working of the links, so I am assuming that they are using window.open and call the popup page.
So once the window is open, I have a link within that window to close it using an a tag that fires a js function which in turn uses self.close(); See code below. This works well in all cases. The problem comes into play under the following conditions:
1) Mac/Safari 3.1 (note that XP/Safari 3.1 does NOT produce the same issue)
2) Once the window is open, the user clicks a 2nd link from the Flash app, showing the selected html page and adding history to the popup window.
3) The user then tries to close the window, which now fails.
4) Any additional addition to the popups history yields the same results (as one might imagine).
I tried to use javascript to navigate back to the initial history point, and then run self.close. This sort of worked as I would revert back in the history stack with the first click, then the window would close on the second call to the close function. But I couldn't get it to work in one click. I did notice that adding an alert between the history rollback and the self.close() actually allowed this idea to work. So I tried a setTimeout, but did not have success. Seems like there's something there, but I guess I don't understand well enough to come up with the solution.
Code:
function self_close(){
self.close();
}
HTML Code:
<a href="#" onclick='javascript:self_close();return false;'>close</a>
I want to trap the window.close() event when the user clicks on the close button of the browser using javascript. Can anyone shed light on this problem ?
View 1 Replies View RelatedThe very simple code (below) works fine in Safari (and Chrome, Firefox etc.), but it doesn't work in Mobile Safari. Why?(You can find a working example at: http:[url]....)
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>[code]......
As per the rather long subject, I would like to (well, my boss would like me to...) on a popup have one button to close and another to close but then redirect to another page.
View 4 Replies View RelatedSuppose,closing the browser through Browser Close Button(Top Right Corner cross(x) button), i have to execute some ASP script , for that, in body onUnLoad Event calling a fucntion called CloseWin(e,frm), it is working in Internet Explorer successfully , But in FireFox not working. how to solve this problem. or any other way to get the co-ordinates of browser close button( code for both IE and Firefox).
code follows
function CloseWin(e,frm)
{
//frm required for my program
var bButtonClicked = false;
[Code]....
I am using the following code in to open a pop-up window (in Flash hence the actionscript tags ..):
This is working fine. My problem is how to close this window from other pages on the website.
I have tried:
And it is not working. What would be the correct javascript to use to close the pop-up window that is opened using the code above?
I need to know if the user close the browser or to open the window � browser without or with a disable close window button How can I???
View 6 Replies View Related- I have a button on my Flash site that opens an HTML page in a popup window. In Flash, I open the new window using Actiosnscript 2.0:
- Within the popup window are links to other HTML pages. They all open in the same window. I've been using the following to create the links in Dreamweaver:
- On each page, I have a "Return to Main Menu" button that should close the popup window. To do this, I have been using:
- The problem is that it works differently in each browser, and I can't even get it to consistently close the window in most browsers:
Internet Explorer = popup message appears, asking "Are you sure you want to close this window?" or something similar; window closes after clicking "Yes."
Safari = Only closes if I'm on the original HTML page. If I click on any of the other links (note that these all open in the same window), those pages' "Return to Main Menu" buttons cease to work. However, if I keep clicking "Back" until I get to the original page, it closes.
Opera = Button actually works for each page.
Firefox & Chrome = Does not close the window at all.
I looked into it and saw that others have used a window.opener to solve similar issues. But, since my popup window is opened using Flash/AS2, I need to find a way around it.
I've tried preceding "window.close()" with "window.opener=null" (i.e. -onClick="window.opener=null; window.close()"), but I don't think I'm doing it right because it still doesn't work.
I've also seen others use codes that involve functions and variables, but it is beyond my current coding knowledge to implement this. Like I said, I'm sort of new at this.
Does anyone know if there is a quick test to tell if Safari 1.3 (or 2.0
will suffice) is the browser that doesn't rely on the typical
navigator.* methods? For instance, there is the good 'ol document.all
test for MSIE... Looking to add Safari support to my tty editor for my cms.
The following code suppresses the 'enter' key, when run in I.E. 5.5 or
later (Windows) but not when run in Safari (Mac)
<body onkeypress="javascript:keysuppress(event)" >
function keysuppress(e)
{
if (e.type=="keypress" && e.keyCode=="13")
{
event.returnValue=false
}
}
What code can I use to suppress the 'enter' key when running an app in
Safari?
I am currently working on a project that displays preview of a jpeg
in an iframe. we can edit this preview - like increasing its zoom
level and changing pages , images etc. This works fine with IE on windows
but whenit comes to Safari on Mac , the preview is lost on refreshing the
browser.
I have noticed that this problem occurs when ever I use Iframes.
Although the main jsp page is refreshed and shown, the jsp page that
is the source for iframe contained in the main jsp page is not shown.
I thought that if I have:
....
<body onload="some_script();">
....
that some_script would not be called until the <body> was completely
loaded - is this not the case? With Safari 1.3 I seem to have to delay
inside some_script (there is some php in the <body> that slows down the
loading). Since I happen to have a spare iframe in my <body>, I load a
tiny bit of html in it whose job is simply to set a "loaded" flag,
tested inside my delay code.
What I was observing was that some fields inside a <form> in the <body>,
whose values are set by some_script, were, with Safari, not visible
until I clicked in one of them - then they all popped into sight. I
wasn't seeing this with other browsers and a delay mechanism fixed it.
It was as if the onload was triggered as soon as it was encountered
rather than when the loading was complete.
I'm trying to use the onPaste event in a text input, which according to Apple is supported. However, I get no response in Safari. Firefox works fine.
View 3 Replies View RelatedI just downloaded safari on my desktop, but not able to open java appl.
View 3 Replies View RelatedI am having problems with a website. It uses javascript to choose a payment option and then calculates the price accordingly. It works on I.E and firefox, but not on safari. A few of our clients use it so it has to be sorted out urgently.
I have no idea why it wouldn't work in safari and i don't have broad enough skills for that.
I have a form that has a Javascript function being called when a button is clicked. The function works properly in every browser except Safari and IE 5.2 for Mac. Any ideas?
View 5 Replies View RelatedI'm writing some stuff where I wish to allow the cursor keys to control
elements in a page. This has not been a problem except with Safari
which appears to duplicate the keydown and keyup events which are fired
when the cursor keys are pressed. I.e. pressing and releasing say, K,
results in one keydown event followed by one keyup event. Press any of
the cursor keys results in two keydown events followed by two keyup
events.....
I have a big <table> and I have added an onmousedown handler.
When I get back the event in IE and Firefox, the individual <td>
element appears in window.event.srcElement (IE) and in
event.target (Firefox). However in Safari the target is just the
<table>, not the <td>.
I need to get back the <td> associated with the event, and I would
not like to put an onmousedown handler on each table cell because
there are a lot of them. Does anybody know how I can get the event
and figure out which table cell was clicked?
The stuff I've built recently works (in the sense that it does what I'm
expecting it to do without any errors or warnings) in IE and FF but
fails silently in Safari. I don't have a Mac to test on. I write some
stuff and send it to the client who tests and reports back.
I don't do any browser sniffing, I test for a feature for I try to use it...
Are there any known oddities about scripting for Safari that might
possibly help me out.
I have a small Javascript problem with that mutch love web browser
safari, I tested the code on all other browsers PC (Win) and Linux and
IE on the mac and it seams to work ok, but for some reason it will not
work with safari.
function domywindows() {
//alert('test');
mywondows =
window.open('writeme.html','TellAFriend','width=45 0,height=600');
mywondows.document.write("<html>");
mywondows.document.write("<body>");
mywondows.document.write("Working Please Wait........")
mywondows.document.write("<form method='post' name='myform'
action='sendm.php' target='_self'>");
mywondows.document.write("<input type='hidden' name='urlis' value='" +
window.location + "?osadcampaign=tf'>");
mywondows.document.write("<input type='hidden' name='productname'
value ='" + productname +"'>");
mywondows.document.write("</form>");
mywondows.document.write("</body>");
mywondows.document.write("</html>");
mywondows.document.myform.submit();
}
Any one any ideas how i can make this mac compatable.
In my applications I've a ton of scripts that use remote XML file to fill forms and evaluate contents; In these scripts I always use the method SelectNode (that, with some workaround, works fine also in Mozilla).
I've just found out that this method doesnt work in Safari browser, therefore my applications are not usable by this browser. Can anyone provide me any solution or workaround to be able to read XML
files in Safari wihout rewriting all of my scripts?
Ok, I've been noodling with this for several days now and I'm starting
to go crazy. Does Apple's Safari browser support drag events on
Textarea elements? The few specs and docs I've found seem to indicate
that it does but I can't get it to work for the life of me. I've tired
everything I can think of to try get notifications for the events:
ondragenter
ondragleave
ondragover
ondrop
Not only do these events not seem to fire over the body of the
textarea, but also the textarea seems to sink the events (so setting
event handlers on document or body report no events while occurring
over the text area). Even stranger the 1px border around the textarea
*does* respond to the events, but once the mouse moves into the actual
textarea it stops. I thought perhaps it was that native OSX UI
elements don't fire events, but all "regular" mouse events seem to
work (onmousemove, onclick, etc...).
Even more frustratingly, if I absolutely position a new element above
the textarea (zIndex of new element textarea's) to try and catch
these events, the text area *below* the element still sinks the events
(even though it's not in the bubbling or capture path for the event).
In other words, a div absolutely positioned above the textarea won't
fire dragevents anywhere it overlaps the textarea. I can't click on
the textarea below or manipulate it in any way, but dragevents still
seem to be sunk by the textarea.
I've tried using event capturing vs. bubbling as well as different
methods of applying the event handler to the text area
(textarea.ondragenter, vs addEventListener(textarea,dragenter,true/
false) all to no avail.
I'm assuming Safari's textarea just doesn't work with drag events,
unless I'm missing something really basic. Anyone gotten this to work?
Any pointers or tips. Google searches have resulted in nothing, I
can't imagine I'm the only person who's tried to get this to work as
it seems like manipulating drag events on textareas would be a common
thing to want to do.
According to the Safari browser the world began on "Fri Dec 13 1901 15:45:52 GMT-0500", but I need to be able to get around this limitation.
I am interested in dates from 1500 to 1901, as far as I can determine, there are 14 possible calendar variations.
Year starts on Sun, Mon..... Leap year starts on Sun, Mon..
I can label these early year "types" as a number between 0 and 13.
Let's say 2005 is type 5, and that 1655 is too. (In both years Jan 1 falls on a Saturday)
I'm trying to create a function that will identify the "type" of year.
function getYearType(year){
return Number // number between 0 and 13
}
In firefox, this script works just fine. But in safari, it doesn't do anything and I can't figure out why.The intention of this code is to just create a draggable item.
View 1 Replies View RelatedI was wondering if there is a way to detect whether a browser is safari.
Then if the browser is safari show a jpg
If the browser is not safari show a swf.