Autor Zpráva
martinkloubek
Profil *
potřeboval bych kříž přes celou stránku tak aby doprovázel myš kompaktní na všechny prohlížeče děkuji moc za radu javascript neovládám
jenikkozak
Profil
martinkloubek:
Řeším podobný problém: potřeboval bych řídit auto, do autoškoly jsem nechodil a návod na auto nečetl, dík, čau.

Co s tebou máme dělat?
Rozmlouvat ti tvůj sen? Vysvětlovat, že tím náštěvníky zřejmě budeš jen štvát a že vlastně máš chybu ve svém požadavku, protože ten kříž nepotřebuješ?
A nebo ti ukázat, kde můžeš začít s tím ovládáním?
Hodně štěstí. :-)
martinkloubek
Profil *
ono je to problém když je člověk po mozkové příhodě a 12 let praxe v pytli



jenikkozak, jenikkozak:A funguje jen jedna ruka ale snažím se co to jde, ale pardon že jsem otravoval.Něco najdu
Someone
Profil
Nechci znít jako necita, ale to Vás neopravňuje k tomu si sem "nakráčet", "zapískat si" ,,kód na stůl" a očekávat, že zdejší obyvatelé dají hlavy dohromady a začnou Vám sepisovat kód.

martinkloubek:
javascript neovládám
Nejsem si jistý a proto to nechci říkat stoprocentně, ale bez JS to asi nepůjde, takže Váš vstup mohl obsahovat klíčová slova typu: Prosím, jak, co nastudovat, atd...
Popřípadě se později zeptat na něco konkrétního.
Witiko
Profil
martinkloubek:
Tím křížem přes celou stránku je myšlené něco na způsob os x a y protínajících se v bodu dotyku kurzoru? To si dovedu představit pomocí position:fixed (případně její simulací přes position:absolute a javascript) aplikovaném na sadu 4 blokových elementů / tabulku 2x2 buňky s borderem na vnitřních hranách. Roztažení této tabulky / elementů na celou stránku by se s borderem nepralo díky výchozímu border-box modelu v quirku, takže by se snad mohlo ponechat i na css. Kolem a kolem, pokud něco neopomíjím, by to mohlo fungovat v IE5+.
martinkloubek
Profil *
Nechci prosím aby někdo sepisoval kod a v předmětu zprávy jsem napsal prosím ale jinak ano x,y kursor protínající se v poloze myši, ale PROSÍM NECHTE TO BÝT JÁ TÍM MYSLEL JEN NAJÍT NĚJAKÝ ODKAZ URČITĚ NĚKDE NĚCO MUSÍ BÝT, a rozhodně jsem nechtěl být nezdvořilý, jsem jen nevrlý protivný nemocný a z toho všeho naštvaný jelikož neumím už to co jsem uměl a těžce se učil, ted mi dělá problém, dát souvislou větu dohromady, takže se všem omlouvám za způsobené starosti a blbým mým dotazem
Petr ZZZ
Profil
martinkloubek:
Asi to nebude přesně to co hledáš, ale je to podobné: CSS kurzory
1Pupik1989
Profil
Úplně jednodušše vybrat pozici x a y myši přes mousemove a vykreslit buď canvasem nebo prostě několik obrázků. Řešení jedna se mi zdá výhodnější, sám ho používám v grafickém online editoru. Mám to dělané jako JQuery plugin, tak pokud vyhovuje, rád se poďělím.
Witiko
Profil
1Pupik1989:
Obrázek, canvas nebo tabulka / blokový element, které popisuju v [#6]. Tabulka a obrázek budou asi nejvíc zpětně kompatibilní řešení.

martinkloubek:
Napsal jsem Vám takové ukázkové řešení: http://pastehtml.com/view/bfem7gzff.html. Řešení toho, že určité prohlížeče mají velikost documentElementu určenou obsahem a kříž se u myši tedy nevykresluje pod koncem obsahu, bude mít nejspíš nějaké CSS řešení, já jej však neznám. Možná by také nebylo špatné otestovat podporu position:fixed a v jejím případě pak zcela vynechat manuální přesun při onscroll události, ale nepodařilo se mi dojít řešení, které by podporu detekovalo spolehlivě.
martinkloubek
Profil *
Petr ZZZ: To je hodně blízko jen by měl být kříž přes celou obrazovkuDěkuji moc za věnování se problému



Witiko:Toto je ono a myslím že to bude velmi dobré děkuji moc snad vás to nezabralo moc času :)
Witiko
Profil
martinkloubek:
Ani ne. A kdo ví, možná to jednou sám využiju. :-)
martinkloubek
Profil *
já na ten javascript koukám jak péro z gauče to jsem koukal i před mozkovou příhodou ale ted je to tutovka



A co takový jde ale jen v ie ciož je problém :

<html><head>
<style>
<!--
#leftright, #topdown{
position:absolute;
left:0;
top:0;
width:1px;
height:1px;
layer-background-color:blue;
background-color:blue;
z-index:100;
font-size:1px;
}
-->
</style>
</head><body>
<div id="leftright" style="width:expression(document.body.clientWidth-2)"></div>
<div id="topdown" style="height:expression(document.body.clientHeight-2)"></div><script language="JavaScript1.2">
<!--/*
Document crosshair Script-
By Dynamic Drive (www.dynamicdrive.com)
For full source code, installation instructions,
100's more free DHTML scripts, and Terms Of
Use, visit dynamicdrive.com
*/if (document.all&&!window.print){
//if the user is using IE 4 (but NOT IE 5. We used dynamic expressions in IE 5 to replace the below code)
leftright.style.width=document.body.clientWidth-2
topdown.style.height=document.body.clientHeight-2
}
else if (document.layers){
document.leftright.clip.width=window.innerWidth
document.leftright.clip.height=1
document.topdown.clip.width=1
document.topdown.clip.height=window.innerHeight
}function followmouse1(){
//move cross engine for IE 4+
leftright.style.pixelTop=document.body.scrollTop+event.clientY+1
topdown.style.pixelTop=document.body.scrollTop
if (event.clientX<document.body.clientWidth-2)
topdown.style.pixelLeft=document.body.scrollLeft+event.clientX+1
else
topdown.style.pixelLeft=document.body.clientWidth-2
}function followmouse2(e){
//move cross engine for NS 4+
document.leftright.top=e.y+1
document.topdown.top=pageYOffset
document.topdown.left=e.x+1
}if (document.all)
document.onmousemove=followmouse1
else if (document.layers){
window.captureEvents(Event.MOUSEMOVE)
window.onmousemove=followmouse2
}//entire code below simply refreshes the page when a surfer reloads the page, to reposition the crosshair. Irrelevant in IE 5
function regenerate(){
window.location.reload()
}
function regenerate2(){
setTimeout("window.onresize=regenerate",400)
}
if ((document.all&&!window.print)||document.layers)
//if the user is using IE 4 or NS 4, both NOT IE 5+
window.onload=regenerate2//-->
</script>
</body></html>

Moderátor Chamurappi: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Witiko
Profil
martinkloubek:
Ty expressions jsou zbytečné, stačí documentElementu v css zrušit bordery, které do Internet Explorer do verze 9 od základu má. Jinak celý ten kód je poměrný kentus, ze kterého lze vyčíst úporný boj autora s jazykem a Internetem Explorerem 4. Autor vyšel výtězně, ale kód bude navždy zjizven. :D

Využil bych své řešení, ale to je zčásti protože mě skutečně netrápí, jestli uživatel IE4 spatří můj zaměřovací kříž nebo zůstane-li mu skryt. Co jsem testoval, funguje ve všem od Internet Exploreru 6 výš.

A založte si, prosím, účet. Nemožnost editace příspěvků na Vaší straně má za následek záplavu Vašich postů a zbytečnou práci navíc pro moderátory.
Chamurappi
Profil
Reaguji na Witika:
Tvé řešení mi vůbec nefunguje. (Mám Explorer 7, ale předpokládám, že nejede v žádném kvůli quirku + pseudoprotokolu data.)
Nevím, proč to tak komplikuješ. Copak na čáru nestačí border?
Witiko
Profil
Chamurappi:
To byl můj první návrh. Jinak IE v quirku protokol data nepodporuje? Možná dělám chybu, že důvěřuju přepínačům módu v Internet Exploreru, ale script jede ve všech módech Režim prohlížeče: 7 - 9 a Režim dokumentu: Adaptivní režim - Standardy IE8.
margin
Profil *
Pseudoprotolol data funguje až v IE 8, v nativním IE 7 nefunguje.

Možná dělám chybu, že důvěřuju přepínačům módu v Internet Exploreru
Zrovna včera jsem natrefil na hezký článek: http://coding.smashingmagazine.com/2011/09/02/reliable-cross-browser-testing-part-1-internet-explorer/
Witiko
Profil
margin:
v nativním IE 7 nefunguje
Ok, nahradil jsem pseudoprotokol obrázkem. Stále zůstává otázka, proč script nefunguje v IE9 bez Quirku.
martinkloubek
Profil *
Witiko:Zajímavý ale už to totálně nechápu
DoubleThink
Profil *
martinkloubek:
ale už to totálně nechápu
Obrázek čáry už není na férovku ve scriptu jako surový base64 řetězec, protože IE7.

Proč se pouštíš do věcí, kterým vůbec nerozumíš? Navíc jenom kvůli idiotskému efektu – tedy předpokládám, že se svými znalostmi neděláš hru, kde by se crosshair dal upotřebit.
martinkloubek
Profil *
Je to pro klienta pro kterýho jsem 10 let pracoval a nechci to zahodit jen kvůli postižení které mně potkalo, ten kříž používají bookerky pro bookování lodí



hru fakt nedělám ani bych nechtěl otravovat s tímto ale nechci vycouvat
Witiko
Profil
martinkloubek:
Ok, už Vám to bude běhat i v IE9 bez quirku (kód ke stažení zde). Místo obrázku jsem dosadil <div> s pozadím. Odlišný přístup je možný přes bordery, ale dneska už to psát nebudu.

nechci to zahodit jen kvůli postižení které mně potkalo
Možná by nebylo od věci realisticky zvážit své možnosti a podle toho se zachovat.

Jinak znovu opakuju žádost o registraci. Díky nemožnosti editovat zasíláte zbytečně příspěvky navíc.
martinkloubek
Profil *
Já to chápu a už jsem psal na začátku at se na to vykašlou viz text,ale PROSÍM NECHTE TO BÝT JÁ TÍM MYSLEL JEN NAJÍT NĚJAKÝ ODKAZ URČITĚ NĚKDE NĚCO MUSÍ BÝT
Witiko
Profil
martinkloubek:
Mnou uváděné řešení by mělo být funkční a použitelné.
martinkloubek
Profil *
Jinak bych rád realisticky zvážil možnosti ale s důchodem 9600 to jde blbě když živím 2 děti a byl jsem zvyklý na jiný příjem
martinkloubek
Profil *
Vkažsdém případě děkuji moc WITIKOvi za snahu použiji to zase úplně tupý nejsem spíš mi to vše dýl trvá
martinkloubek
Profil *
ted si to vemou špatně ostatní že jim sem nepoděkoval a jemu jo tak i pro všechny zůčasněné děkuji moc vím že je to kravina já sám bych jí nepoužíval nechtít to ženským kterým se to líbí a pomáhá v řádkování
Witiko
Profil
martinkloubek:
Není zač, ještě zasílám verzi, která upravuje drobnou chybu ve vzhledu na IE6: http://pastebin.com/jjWWmUKJ (div bez potomků se v IE6 roztáhnul na výchozí výšku a ignoroval CSS nastavení, nyní obsahuje prázdný textový uzel). Jinak doufám, že až Vás tu příště potkáme, bude to na registrovaném účtu, aby Vaše příspěvky netvořily takřka polovinu všech příspěvků ve vlákně.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0