Προς το περιεχόμενο

Οι predefined τιμές σε style αγνοούνται?


Verseau

Προτεινόμενες αναρτήσεις

Δημοσ.

Kalimera,

 

Exo grapsei to eksis:

</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">

<html>

<head>

<style type="text/css">

.tab{left: 17;}

</style>

<script language="JavaScript">

function setState(tabNum){

document.getElementById('tab'+tabNum).style.left = noPX(document.getElementById('tab'+tabNum).style.left) - 2;

}

 

function noPX(strWithPX){

return parseInt(strWithPX.substring(0, strWithPX.indexOf('px', 0)));

}

</script>

</head>

<body>

<div id="tab1" class="tab" onclick="setState(1);">

General

</div>

</body>

</html>[/code]</blockquote><font size="2" face="Verdana, Helvetica, sans-serif">'Οταν πάω και κάνω click στο div η τιμή του

document.getElementById('tab'+tabNum).style.left

είναι το empty string και όχι το "17px" όπως θα περίμενα.

 

Γιατί δεν ενημερώνεται η τιμή του left; Δυστυχώς

δεν μπορώ να το λύσω με inline statement γιατί

θέλω να δημιουργήσω πολλά divs τύπου tab τα οποία

θα δημιουργούνται δυναμικά.

 

Ευχαριστώ εκ των προτέρων ακόμα και για μια ματιά

που θα ρίξετε στο πρόβλημα.

 

Φιλικά,

Κωνσταντίνος

Δημοσ.

Dokimase na afaireseis to ; apo to stylesheet. Kane to dhladh:

</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">code:</font><hr /><pre style="font-size:x-small; font-family: monospace;"><style type="text/css"> .tab{left: 17}</style>[/code]</blockquote><font size="2" face="Verdana, Helvetica, sans-serif">Ap oso exw katalavei apo thn empeiria mou sto teleftaio style sto stylesheet den prepei na vazeis ; giati alliws agnoeitai! Den exw psa3ei to logo se reference, alla mallon etsi syntassontai ta stylesheets.

 

Filika

Dionisos

Δημοσ.

Αρχικά να ευχαριστήσω τον 'Dionisos' για την

απάντησή του. Δεν ευθύνεται το ';' που

χρησιμοποίησα στον ορισμό του style.

 

Η λύση βρίσκεται στη χρήση του

αντικειμένου 'currentStyle' σε συνδυασμό με το

αντικείμενο 'style'. Σας παραθέτω το λογο για τον

οποίο δε δούλεψε, όπως περιγράφεται στο

microsoft library:

 

The 'currentStyle' object returns the cascaded styles on an element, but the 'style' object returns only the styles that have been applied inline on an element through the 'style' attribute. Thus, the style values retrieved through the 'currentStyle' object might differ from the style values retrieved through the 'style' object. For example, if the 'color' property is set on a paragraph only through a linked or embedded style sheet, and not inline, then 'object.currentStyle.color' returns the color, whereas 'object.style.color' does not return a value. If, however, the author specifies <P STYLE="color:'red'", the 'currentStyle' and style objects return the value red.

 

Για εκτενέστερη περιγραφή του 'style' και

'currentStyle' αντικειμένων σας παραπέμπω στις

ακόλουθες διευθύνσεις:

 

style object description

currentStyle object description

 

Συμπέρασμα: Πριν χρησιμοποιήσετε οποιοδήποτε

αντικείμενο σε οποιαδήποτε γλώσσα διαβάστε καλά

τον τρόπο (events, default property values ...)

με τον οποίο το χρησιμοποιεί το περιβάλλον στο

οποίο προγραμματίζετε.

 

Καλό programming, και καλά ξενύχτια! <img border="0" title="" alt="[Cool]" src="images/icons/cool.gif" />

Verseau

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...