How to set the default home page using php code in Firefox

A

Anz

I used the javascript functions as shown below.
<a href="javascript:;;;"
onclick="this.style.behavior='url(#default#homepage)';
this.setHomePage(location.href);">

But this code works for IE, not for Firefox. While running this code,
the firefox shows javascript error as

this.setHomePage is not a function

Is there any javascript function available for both the browsers?
 
T

Thomas 'PointedEars' Lahn

Anz said:
I used the javascript functions as shown below.
<a href="javascript:;;;"

Pure nonsense. http://jibbering.com/faq/#FAQ4_24
onclick="this.style.behavior='url(#default#homepage)';
this.setHomePage(location.href);">

But this code works for IE, not for Firefox.

Yes, it is IE-proprietary nonsense.
While running this code, the firefox shows javascript error as

this.setHomePage is not a function

Is there any javascript function available for both the browsers?

No, and that is good so. *I* decide when and to what I set *my* browser's
start page to, not you. Stop this nonsense while you are at it, and learn
that there are more than two browsers.


PointedEars
 
M

Matthias Watermann

I used the javascript functions as shown below.
<a href="javascript:;;;"
onclick="this.style.behavior='url(#default#homepage)';
this.setHomePage(location.href);">

What's that supposed to be?
It's neither valid HTML markup nor JavaScript code nor CSS.
Looks like some junkie mixed up all he got to prepare his final kick.
But this code works for IE,

You know, M$ doesn't care for standards they do not own. So whatever
might work with M$IE is _never_ an indicator for validity outside a
strictly controlled M$-laboratory.
[...]
this.setHomePage is not a function

Indeed! Setting up the browser's start page is _not_ subject to
arbitrary user code originating at whatever dubious sources.
Where did you dream up that function call?
Is there any javascript function available for both the browsers?

Sure, even M$IE couldn't fail to implement some JavaScript functions. So
even functions like "window.alert()" are "available for both the browsers".
Anything special you're looking for?


--
Matthias
/"\
\ / ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
X - AGAINST M$ ATTACHMENTS
/ \
 
T

Thomas 'PointedEars' Lahn

Matthias said:
What's that supposed to be?
It's neither valid HTML markup

Imagine there is an end tag. Then it *is* Valid HTML, actually.
nor JavaScript code

Yes, it is.

It was not intended to be, was it?
Looks like some junkie mixed up all he got to prepare his final kick.

Most definitely :)
Sure, even M$IE couldn't fail to implement some JavaScript functions. So
even functions like "window.alert()" are "available for both the browsers".

But neither one is a "javascript function". Both are, if supported, methods
provided by the UA's API.
Anything special you're looking for?

There's a script-kiddie playing in the sandbox, I presume.


PointedEars
 
G

Gordon

I used the javascript functions as shown below.
<a href="javascript:;;;"
onclick="this.style.behavior='url(#default#homepage)';
this.setHomePage(location.href);">

But this code works for IE, not for Firefox. While running this code,
the firefox shows javascript error as

this.setHomePage is not a function

Is there any javascript function available for both the browsers?

Any website that tries to force me to make it my home page gets
immediately blacklisted forever. I want to see Google when I start my
browser, not your site which I can promise you will not be as useful
as Google.
 
M

Matthias Watermann

Imagine there is an end tag. Then it *is* Valid HTML, actually.

Uh? I was under the impression that a "href" attribute is supposed
to contain an URL. Where is an URI type/syntax of "javascript:;;;"
defined? (Ignoring the fact that such an abuse is very hostile to
readers.)
Yes, it is.

You mean the content of the "onclick" attribute, right? But that's
only a part, a fragment not the whole thing the OP posted.
It was not intended to be, was it?

Who knows? Something like "this.style. ..." looks like CSS.
Most definitely :)

Alas, everything seems more complicated nowadays. Some LSD in the
sixties or a joint in the seventies were not that hard to get as a
properly f**cked up web-page involving markup, scripting and styling.
You can get it by accident, sure, but to make it intentionally and
properly is not that easy as the OP now learns the hard way.
But neither one is a "javascript function". Both are, if supported,
methods provided by the UA's API.

Do you think he knows the difference? Considering he tried to call
a "setHomePage() method of an anchor element?
There's a script-kiddie playing in the sandbox, I presume.

Ah, good point! I think, we should leave him alone then.


--
Matthias
/"\
\ / ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
X - AGAINST M$ ATTACHMENTS
/ \
 
T

Thomas 'PointedEars' Lahn

Matthias said:
Uh? I was under the impression that a "href" attribute is supposed
to contain an URL. Where is an URI type/syntax of "javascript:;;;"
defined? (Ignoring the fact that such an abuse is very hostile to
readers.)

According to the relevant Specifications, the value of the `href' attribute
must be of type _URI_, i.e. a URI or URI reference as defined in RFC3986
(which obsoletes RFC2396 as referred to by the HTML 4.01 Specification). By
these criteria, `javascript:;;;' does qualify as a URI: However
proprietary, `javascript' can be produced as the scheme name, and `;;;' can
be produced by the `path-rootless' production of the RFC's grammar.

,-<http://www.rfc-editor.org/rfc/rfc3986.txt>
|
| Appendix A. Collected ABNF for URI
|
| URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
| [...]
| scheme = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )
| [...]
| hier-part = "//" authority path-abempty
| / path-absolute
| / path-rootless
| / path-empty
| [...]
| path-rootless = segment-nz *( "/" segment )
| [...]
| segment-nz = 1*pchar
| [...]
| pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
| [...]
| sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
| / "*" / "+" / "," / ";" / "="

It is notable that the `;' character actually serves as sub-delimiter in
ECMAScript implementations: it delimits adjacent Statements. In fact, we
have three adjacent EmptyStatements here. Not useful, and certainly not to
be recommended in this context, but syntactically valid nonetheless.

(You asked for it ;-))
You mean the content of the "onclick" attribute, right?

And the value of the `href' attribute.
But that's only a part, a fragment not the whole thing the OP posted.

Doesn't matter. I would consider it to be wrong to say that it is not
JavaScript when a subset is written in what could be executed as JavaScript.
Who knows? Something like "this.style. ..." looks like CSS.

You are confused. Something like this could only be CSS (i.e. be produced
by the CSS grammar) if there was an element type `this' that had a `class'
attribute with value `style'. Since we are talking HTML here, this could
never be CSS. Also, the `=' character could never be part of CSS in this
context.

It is clearly an attempt at client-side stylesheet scripting. The language
used is apparently an ECMAScript implementation here; it may be JavaScript,
or it could be considered "JavaScript" in the broadest sense. However
error-prone if used untested, the value assigned the the property here
modifies the proprietary `behavior' style property of the MSHTML DOM; in the
broadest sense, this value could be considered CSS (the CSS Specification
supports code which uses unspecified properties and values by specifying a
fallback mechanism).
Do you think he knows the difference? Considering he tried to call
a "setHomePage() method of an anchor element?

Nope, and neither did you. Hence the clarification :)


PointedEars
 
M

Matthias Watermann

According to the relevant Specifications, the value of the `href'
attribute must be of type _URI_, i.e. a URI or URI reference as defined
in RFC3986 (which obsoletes RFC2396 as referred to by the HTML 4.01
Specification). By
these criteria, `javascript:;;;' does qualify as a URI: However
proprietary, `javascript' can be produced as the scheme name, and `;;;'
can be produced by the `path-rootless' production of the RFC's grammar.

Now, that's interesting! You know, I had sort of an argument the other
day with a comrade who tried to convince me that the "javascript" scheme
isn't defined anywhere in fact and that it's used only by mindless
programmers and interpreted by some tolerant browsers. And indeed, none
of the RFCs you quoted mentions "javascript" (only the usual schemes
like "ftp", "gopher", "http" etc.). So would you kindly provide a
pointer to the document(s) defining the "javascript" URI scheme? Or
does your choice of words ("proprietary") indicate that it is indeed
not official?
[...]
You mean the content of the "onclick" attribute, right?

And the value of the `href' attribute.
But that's only a part, a fragment not the whole thing the OP posted.

Doesn't matter. I would consider it to be wrong to say that it is not
JavaScript when a subset is written in what could be executed as
JavaScript.

Well, I disagree since a "subset" is clearly not the whole. But it's
not worth arguing. So have it your way :)
[...]
Who knows? Something like "this.style. ..." looks like CSS.

You are confused.

Now, that was the reason why I asked in the first place, wasn't it?
Sometimes it's hard to know what to think. Like the other day when I
took a brake from C++ programming and posting something about scope
which wasn't true for javascript at all. Fortunately there's always
someone to correct the mistakes. One of the great things about USENET.
[...]
Do you think he knows the difference? Considering he tried to call a
"setHomePage() method of an anchor element?

Nope, and neither did you. Hence the clarification :)

Thank you so much. I appreciate your selfless help.

--
Matthias
/"\
\ / ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
X - AGAINST M$ ATTACHMENTS
/ \
 
T

Thomas 'PointedEars' Lahn

Matthias said:
Now, that's interesting! You know, I had sort of an argument the other
day with a comrade who tried to convince me that the "javascript" scheme
isn't defined anywhere in fact and that it's used only by mindless
programmers and interpreted by some tolerant browsers. And indeed, none
of the RFCs you quoted mentions "javascript" (only the usual schemes
like "ftp", "gopher", "http" etc.).

Doesn't matter. A URI does not need to use a standardized scheme in order
to be a URI. This is purely a matter of syntax, and if it fits the grammar,
it is a URI.
So would you kindly provide a pointer to the document(s) defining the
"javascript" URI scheme? Or does your choice of words ("proprietary")
indicate that it is indeed not official?

I think the latter applies. Here it is as official as it can get (revealed
by a quick Google search for "javascript url", BTW):

http://research.nihonsoft.org/javascript/jsref/wina1.htm#1013049
http://docs.sun.com/source/816-6408-10/location.htm#1193181

For subscribers without immediate Web access:

| *Syntax for common URL types.* When you specify a URL, you can use
| standard URL formats and JavaScript statements. The following table
| shows the syntax for specifying some of the most common types of URLs.
|
| *Table 1.1 URL syntax.*
| URL type Protocol Example
| -------------------------------------------------------
| JavaScript code javascript: javascript:history.go(-1)
| [...]
|
| The following list explains some of the protocols:
|
| * The javascript: protocol evaluates the expression after the colon :)),
| if there is one, and loads a page containing the string value of the
| expression, unless it is `undefined'. If the expression evaluates to
| `undefined' (by calling a void function, for example
| javascript:void(0)), no new page loads. Note that loading a new page
| over your script's page clears the page's variables, functions,
| and so on.

(Note: The Reference is imprecise regarding `void'; per Specification, it is
an operator, not a function. So `void 0' achieves the same as `void(0)'.)
[...]
Is there any javascript function available for both the browsers?
Sure, even M$IE couldn't fail to implement some JavaScript functions.
So even functions like "window.alert()" are "available for both the
browsers".
But neither one is a "javascript function". Both are, if supported,
methods provided by the UA's API.
Do you think he knows the difference? Considering he tried to call a
"setHomePage() method of an anchor element?
Nope, and neither did you. Hence the clarification :)

Thank you so much. I appreciate your selfless help.

You're welcome.


PointedEars
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,581
Members
45,056
Latest member
GlycogenSupporthealth

Latest Threads

Top