Autor Zpráva
Lukáš Chmela
Profil *
Zdravím všechny.
Mám problém s JavaScriptem, který už dlouho nepoužívám.
Vytvářím webovky s PHP scripty, ale časem mi došlo, že k vytvoření opravdu kvalitního a profesionálního webu je za potřebí i mnoha uživateli nepodporované techniky - jazyka JS.
Abych to trochu upřesnil:
Potřeboval bych posunout obsah nijak nepozicovaného divu ( bez position:relative či absolute ) dejme tomu o 10px. Je naprosto jedno na jakou stranu, výsledek si stejně dokážu upravit sám. Zásadní problém je asi v tom, že div nesmí mít relativní ani absolutní pozici. Všechny scripty ( i takové, které zobrazovaly celé scrollbary ) potřebovali absolutní či relativní pozici DIVu. Zkoušel jsem už funkci ScrollBy(), ale ta má vliv pouze na objekty window a v mém případě by pomohl pouze iframe, který ovšem nepřipadá v úvahu, kvůli starším verzím některých prohlížečů. Taky jsem už vyzkoušel zásah do stylování ( style.top ), ale opět je potřeba relativní pozice...
Daný div je spíše taková lišta a z důvodu její velikosti i zásahu do designu není možné použít klasický scrollbar, pomocí css ( overflow:auto ). Vzhledem k tomu, že příliž nesázím na na to, že existuje nějaký kompromis, stačil by mi i nějaký jsticker, který by obsah divu PLYNULE změnil
( 1. varianta - původní obsah začne pozvolna mizet, až zmizí úplně a pak se stejným způsobem objeví obsah druhý
2. varianta - původní obsah vyjede nahoru ( jako po scrollování ) a stejným způsobem se objevý obsah druhý )
Nejraději však posunutí obsahu, jak jsem již popsal výše.
Předem všem děkuji.
Věřím, že mi pomůžete.
Lukáš Chmela
Profil *
Omlouvám se, že zbytečně píši ještě jeden příspěvěk, ale zapomněl jsem dodat zásadní věc a to sice tu, že pozici obsahu je třeba změnit po kliknutí na odkaz,... ( onclick )
Lukáš Chmela
Profil *
Achjo, tak nic no.. ale díky za snahu
RPG
Profil
Lukáš Chmela
Nezoufej, tohle je fórum, odpověď nepříjde hned. Zvlášť ne, pokud jde o tak obsáhlé téma.
Lukáš Chmela
Profil *
RPG: =) děkuji za podporu. ;-)
Leo
Profil
No moc jsem nepochopil o co vam vlastne jde, ale JS do toho tahejte az nakonec. Umite to, ceho se snazite dosahnout udelat staticky v CSS? Pokud ne, nema cenu zatim resit JS. Leo
RPG
Profil
Abych pravdu řekl, také jsem to moc nepochopil. Chce to méně textu.
Lukáš Chmela
Profil *
All: Jednoduše řečeno, potřeboval bych posunout obsah obyčejného divu o několik pixelů dejme tomu nahoru. Prostě jej vyscrollovat pomocí js bez scrollbaru. Pokud by to nešlo, spokojil bych se i s plynulou změnou obsahu divu, jak jsem již popsal výše.

Leo: by bylo jasno. Ne že bych to neuměl, ale jednoduše si v tomto případě nemohu dovolit absolutní či relativní pozicování.
RPG
Profil
Lukáš Chmela
A co takhle pomocí JS zvětšit padding pro daný <div>?
Lukáš Chmela
Profil *
nj, ale čeho tím dosáhnu? Zvětšení paddingu není špatný nápad, ale pomůže jen v jednom směru.
Text divu posune maximálně tak, že bude za jeho okrajem, ale na druhou stranu se logicky nedostanu..
mmnt, jdu to zkusit, ale stejně tomu nevěřím...
Lukáš Chmela
Profil *
Obávám se, že takhle to taky nepůjde :'(
Leo
Profil
Pokud to neudelate pres CSS tak to neudelate IMHO ani pomoci JS - ten je nadstavbou CSS, Leo
Leo
Profil
"ale jednoduše si v tomto případě nemohu dovolit absolutní či relativní pozicování"

v CSS nebo ani pres JS? Leo
Lukáš Chmela
Profil *
Njn. A nešlo by to třeba pře nějaký ten jsticker? Já jsem totiž nenašel nic vhodného a sám to bohužel nesestrojím, protože nevím, na jakém principu to pracuje :-/
Lukáš Chmela
Profil *
Ani v jednom. Div, o kterém mluvím prostě nesmí mít stálou pozici na okně. Ani absolutí ani relativní. Potřebuji, aby byl normálně vložen do dokumentu
Leo
Profil
Jakou stalou pozici na okne zase? Vite, co je to relativni pozice? Leo
Lukáš Chmela
Profil *
Špatně jsem se vyjádřil. Už jsem trochu rozpačitý, protože to tady opakuji pořád dokola.
Leo
Profil
Dejme tomu, ze byste mel moznost pro danou stranku menit CSS. Umel byste pak udelat to, ceho se snazite dosahnout (bez JS)? Leo
Lukáš Chmela
Profil *
Já jsem autorem, oné stránky, takže možnost měnit css mám. Jenom protě nemohu použít relativní ani absolutní pozici, jelikož tenhle div je zabalen v dalším divu, který je vlastně jakési obsahové okno, jehož obsah se bude scrollovat. No a div, o kterém teď hovoříme není v obsahovém okně sám, takže nemohu použít absolutní ani relativní pozici, protože by to narušilo statiku webu. Tak jsem doufal, že mi tenhle problém pomůže vyřešit JavaScript. Stačí?
Lukáš Chmela
Profil *
Zapomněl jsem ještě dodat, že bez JavaScriptu by to ani nešlo, jelikož výsledný script jsem si chtěl upravit tak, aby scrolloval, dokud je spuštěn. Tzn. na událost onmouseover či onmouseout, přičemž by se postupně zrychloval ;-)
Lukáš Chmela
Profil *
Žádný odkaz, ale šipka scrollbaru
Lukáš Chmela
Profil *
Tenhle můj problém je opravdu zapeklitý. Aby bylo možné scrollovat obsah lišty, nahradil jsem div za iframe, který jsem původně neměl v plánu použít. Iframe již mohu scrollovat pomocí funkce scrollBy, ale setkal jsem se s dalším problémem. Už jsem zkoušel googlit, ale nevygooglil jsem nic, co by mi mohlo pomoct. V onon iframe mám tlačítka při kliknutí potřebuji, aby se do textarey nadřazeného rámce připsal text. Jenže jak na to? parent nepodporuje value+= a tím pádem je zápis onclick="parent.textarea.value+='text'" neplatný. Vidím, že js nebude můj nejlepší přítel, jako např. php.
Prosím, pomoc... :'(
Toto téma je uzamčeno. Odpověď nelze zaslat.

0