Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Javascript > clip in Opera

Reply
Thread Tools

clip in Opera

 
 
roman@nomail
Guest
Posts: n/a
 
      09-10-2003
Hello,

I've just downloaded and installed Opera711, good browser. Most of my
scripts work just fine, except the ones that use "clip" property. Opera
docs say that it's supported but I can't get it to work. It seems that
clip is some kind of object (some kind of rect?) but I'm unable to read
it's properties, only
methods. It has only one method "replace". Can you tell me what's going
on there? And why can't I read properties of objects with the function
below?
----------------------------------------
<HTML><HEAD><TITLE></TITLE>
<script type="text/javascript">
function getClip(o){
var c = o.style.clip;
//document.zz.qq.value = objProps(c, 'o');
//document.zz.qq.value = objProps(o, 'o');
document.zz.qq.value = objProps(o.style, 'o');
}
function objProps(obj, name){
var str = "";
for (var i in obj)
str += name + '.' +i+ '=' +obj[i]+ '\n';
return str;
}
function s(){
this.h = "k";
}
</script>
</HEAD><BODY>

<DIV ONCLICK="getClip(this)"
STYLE="position:absolute; top:0; left:0; width:100; height:50">Get
Clip</DIV>

<FORM NAME="zz" ACTION="" METHOD="">
<TEXTAREA NAME="qq" COLS=65 ROWS=15></TEXTAREA>
</FORM>
</BODY></HTML>
-----------------------------------
TIA,
Roman
 
Reply With Quote
 
 
 
 
Janwillem Borleffs
Guest
Posts: n/a
 
      09-10-2003

<roman@nomail> schreef in bericht
news:(E-Mail Removed)...
> Hello,
>
> I've just downloaded and installed Opera711, good browser. Most of my
> scripts work just fine, except the ones that use "clip" property. Opera
> docs say that it's supported but I can't get it to work. It seems that
> clip is some kind of object (some kind of rect?) but I'm unable to read
> it's properties, only
> methods. It has only one method "replace". Can you tell me what's going
> on there? And why can't I read properties of objects with the function
> below?


There isn't such thing as a default clip property, so you will have to set
it if you want to use it:

function getClip(o){
var c = o.style.clip;
if (c) alert(c); else alert('Not set');
}
....
<DIV ONCLICK="getClip(this)"
STYLE="position:absolute; top:0; left:0; width:100; height:50;
clip:rect(auto,auto,auto,auto)">Get
Clip</DIV>


JW



 
Reply With Quote
 
 
 
 
DU
Guest
Posts: n/a
 
      09-10-2003
roman@nomail wrote:

> Hello,
>
> I've just downloaded and installed Opera711, good browser. Most of my
> scripts work just fine, except the ones that use "clip" property. Opera
> docs say that it's supported but I can't get it to work.


There are a few bugs. One well known in Opera 7.x is that the background
(image, color) is not clipped, only content.

It seems that
> clip is some kind of object (some kind of rect?) but I'm unable to read
> it's properties, only
> methods.


clip is a property. The only shape supported is rect.

It has only one method "replace".

?

Can you tell me what's going
> on there? And why can't I read properties of objects with the function
> below?
> ----------------------------------------
> <HTML><HEAD><TITLE></TITLE>
> <script type="text/javascript">
> function getClip(o){
> var c = o.style.clip;
> //document.zz.qq.value = objProps(c, 'o');
> //document.zz.qq.value = objProps(o, 'o');
> document.zz.qq.value = objProps(o.style, 'o');


Opera 7.20 beta now supports getComputedStyle and getComputedValue.
Your getClip function is not best I think. I would have been using
currentStyle for IE instead of style... if you want to get the default
css declarations of existing elements.

> }
> function objProps(obj, name){
> var str = "";
> for (var i in obj)
> str += name + '.' +i+ '=' +obj[i]+ '\n';
> return str;
> }
> function s(){
> this.h = "k";
> }
> </script>
> </HEAD><BODY>
>
> <DIV ONCLICK="getClip(this)"
> STYLE="position:absolute; top:0; left:0; width:100; height:50">Get
> Clip</DIV>
>


Invalid CSS code.
"a unit must be specified for length values"
http://www.w3.org/TR/CSS2/syndata.html#parsing-errors

" The format of a length value (denoted by <length> in this
specification) is an optional sign character ('+' or '-', with '+' being
the default) immediately followed by a <number> (with or without a
decimal point) immediately followed by a unit identifier (e.g., px, deg,
etc.)."
http://www.w3.org/TR/CSS2/syndata.html#value-def-length

Your getClip function should be coded in a way that it should return
rect(auto auto auto auto)
or
rect(auto,auto,auto,auto)
in any DOM2 and CSS2 compliant browser.

> <FORM NAME="zz" ACTION="" METHOD="">
> <TEXTAREA NAME="qq" COLS=65 ROWS=15></TEXTAREA>


It's always better to quote attribute values as it speeds up a bit
parsing and rendering and it avoids errors of all kinds in all sorts of
situations.

http://www.htmlhelp.com/faq/html/basics.html#quotes
http://www.html-faq.com/htmlvalidation/?quoteattributes
Why attribute values should always be quoted in HTML
http://www.cs.tut.fi/~jkorpela/qattr.html

DU
--
Javascript and Browser bugs:
http://www10.brinkster.com/doctorunclear/
- Resources, help and tips for Netscape 7.x users and Composer
- Interactive demos on Popup windows, music (audio/midi) in Netscape 7.x
http://www10.brinkster.com/doctorunc...e7Section.html

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Comparisons of IE, Opera and Firefox on DOM (Javascript/CSS) support(Opera wins) Bob HTML 24 05-21-2006 05:31 PM
Paste image from clip board to send via e-mail Ben ASP .Net 2 09-13-2005 06:26 PM
Opera 7.53 vs Opera 6.0 ? Hockey Buff Computer Support 3 08-17-2004 08:53 PM
Animation in Java 3d to a Video Clip Oracle3001 Java 0 10-27-2003 02:23 AM
Clip interface... romain Java 1 08-13-2003 04:03 AM



Advertisments