473,402 Members | 2,046 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,402 software developers and data experts.

javascript if statent

Dan
Hi

I am trying to use this javascript code to see if a frame is part of a
parent. It displays yes when it is part of a parent, but my only
problem is that it doesn't display no when it is not part of a parent.
In other words, when top.bob.document.title = test it displays yes, but
when it isn't test it doesn't display anything.

<script>
if (top.bob.document.title == "test"){
document.write("yes")
}
else{
document.write("no")
}
</script>

Dan

Nov 27 '05 #1
3 1135
Dan wrote:
Hi

I am trying to use this javascript code to see if a frame is part of a
parent. It displays yes when it is part of a parent, but my only
problem is that it doesn't display no when it is not part of a parent.
In other words, when top.bob.document.title = test it displays yes, but
when it isn't test it doesn't display anything.
Because if top.bob doesn't exist, then attempting top.bob.document will
cause an error and the script won't run. The JavaScript console will
have a message like:

'top.bob has no properties'


<script>
The type attribute is required:

<script type="text/javascript">

if (top.bob.document.title == "test"){


if (top
&& top.bob
&& tob.bob.document.title
&& tob.bob.document.title == 'test'){
[...]

--
Rob
Nov 27 '05 #2
Dan
Okay now I have the following code but it doesn't display anything if
it is part of a parent:

<script type="text/javascript">
if (top
&& top.bob
&& tob.bob.document.title
&& tob.bob.document.title == "test"){
document.write("yes")
}
else{
document.write("no")
}
</script>

Nov 27 '05 #3
Dan wrote:
Okay now I have the following code but it doesn't display anything if
it is part of a parent:


I made a mess of it - look for 'tob', sheesh - early Monday ain't my
best time of the day. Forget the other post, use the stuff below.

If the script is in a document loaded into a frame, then:
<script type="text/javascript">

var o;
if ( (o = top)
&& (o = o.frames)
&& (o = o.bob)
&& (o = o.document)
&& (o = o.title)
&& o == "test"
){
document.write("yes")
} else {
document.write("no")
}
</script>

But if the script is in 'top', you can't get access to the document in
the iFrame until after the frame has loaded, so use an onload function:

<script type="text/javascript">

window.onload = function(){
var o;
if ( (o = top)
&& (o = o.frames)
&& (o = o.bob)
&& (o = o.document)
&& (o = o.title)
&& o == "test"
){
alert('bob and test found');
} else {
alert('bob or test not found');
}
}

</script>

[...]
And remember cross-domain issues with getting access to the iFrame content.

--
Rob
Nov 28 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.