Jump to content
php.lv forumi
  • 0

scrollWidth probleem ieksh FF


ebw

Question

Sveiki!

Atradu ka ir taada probleema nosakot elementam scrollWidth FireFoxii.

Kods aptuveni sekojoshs.

 

<htm<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><title>ff problem</title>
<script>
function f() {
 elm = document.getElementById('i');
 alert(elm + '\n' +
       'offsetWidth: ' + elm.offsetWidth + '\n' +
       'scrollWidth: ' + elm.scrollWidth + '\n');
}
</script>
</head>
<body>


<input id="i" style="width:50px;" value="some long long string">
<button onClick="f();">Show</button>

</body>
</html>

 

IE7 vinjsh uzraada pareizu veertiibu "scrollWidth" (129), bet FF (3.5) vinjsh nemainiigi raada ka "scrollWidth" ir 50 (tikpat cik "offsetWidth").

Varbuut kaads ir sastapies ar liidziigu probleemu un var ieteikt kaadu risinaajumu - kaa piespiest FF atgriezt pareizo veertiibu?

Paldies!

Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Vispār tu tur apskati "input" elementu, kuram nav "scrollbar", kādu vēl scrollWidth gribi dabūt? No mozzila.org:

scrollWidth is a read–only property that returns either the width in pixels of the content of an element or the width of the element itself, whichever is greater. If the element is wider than its content area (for example, if there are scroll bars for scrolling through the content), the scrollWidth is larger than the clientWidth.

 

Ar "div" arī neies krastā, jo uzstādot tam css parametru "width" konkrētu pikseļu skaitu, tu pats nofiksē to elementu un saturs tam nebūs platāks (loģiski ne?) Attiecīgi, tev jāliek platumā elastīgā elementā saturs.

Kas attiecas uz input lauku, tur nav nekāds "scrollWidth", jo tas nav elementa saturs, bet elementa vērtība. Textarea laukā gan vari iegūt, jo tur ir "scrollbari", bet tur "skrollēsies" viss vertikāli!

Link to comment
Share on other sites

  • 0

DIV'am var būt norādīts platums, bet iebāzt iekšā var arī lielāku elementu, teiksim bildi.

Tad nāk talkā propertijs overflow:visible|hidden|scroll|auto, un tad tomēr saturs var būt platāks par width (arī loģiski, ne? :) )

Edited by briedis
Link to comment
Share on other sites

  • 0

Jūs jau varat te runāt, ko gribat, kā būtu jābūt vai kā nebūtu jābūt, bet citāts no tās pašas lapas vēsta:

Specification

There is no W3C specification for scrollWidth.

Tātad, ja jūs izdomājat te savas "specifikācijas" Javascript elementiem, tad kāpēc uzskatiet, ka pārlūkprogrammām jāstrādā tā kā jūs paši gribētu?

Link to comment
Share on other sites

  • 0

beigaas uztaisiiju taa, kad tiek izveidots neredzams DIV ar taadu width kaa inputam

.ffDiv {
overflow-x:scroll;
white-space:nowrap;
height:0;
position:absolute;
}

kuram arii vajadziigajaa momentaa tiek nolasiits tas scrollWidth.. kursh tagad tiek atgriezts pareizi.

tas taads workarounds. buutu jau feini ja Mozilla safixotu sho lietu :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...