webForumDet fria alternativet

Markera focus

8 svar · 444 visningar · startad av Web-Tor

Web-TorMedlem sedan nov. 200011 794 inlägg
#1

Jag vill att användaren tydligt ska se vilket element som är aktivt (t.ex. genom att lägga på dubbel border). Jag använder onblur/onfocus och byter CSS-class på elementet. Finns det någon annat (smartare?) sätt att göra detta i Explorer?

icaaqMedlem sedan okt. 20004 910 inlägg
#2

Tjenare Tor.
Då Internet Explorer bara tar pseudo-classes på a-element så tror jag det blir svårt att åstadkomma med annat än javascript.

Om dina användare hade använt någon webbläsare som stöder css 2.1 så skulle du kunna göra så här.
http://member.webforum.nu/1029/tor.htm

mv icaaq

PepeJeriaMedlem sedan feb. 2003779 inlägg
#3

Precis, för IE får du köra med en JS lösning:

<style type="text/css">
.focused
{
	background:orange;
}

.blurred
{
	background:white;
}
</style>
<input type="text" onfocus="this.className='focused';" onblur="this.className='blurred';">
Web-TorMedlem sedan nov. 200011 794 inlägg
#4

icaaq skrev:

Om dina användare hade använt någon webbläsare som stöder css 2.1 så skulle du kunna göra så här.

Tyvärr så är Explorer 5.5+ kravet för den webbapplikation som vi bygger.

PepeJeria skrev:

Precis, för IE får du köra med en JS lösning:

Jo, det är ju ungefär så jag gör idag. Hade hoppats att det fanns någon fin Explorer-specifik lösning.

Erik JuhlinMedlem sedan maj 20007 625 inlägg
#5

Om du tycker det är jobbigt att lägga in JavaScriptet på varje element så skulle du ju kunna ha en grej som loopar igenom alla element och lägger till det. :)

dectgapMedlem sedan sep. 20021 542 inlägg
#6

Du kan ju fortsätta på PepeJerias lösning och göra den lite mer generell:

http://member.webforum.nu/4192/focus.html

nitro2k01Medlem sedan aug. 20037 630 inlägg
#7

Eller kanske ännu snyggare, använd ett behavior!

 [b]markfocus.htc[/b]
<public:component>
<public:attach event="onfocus" onevent="setFocus()" />
<public:attach event="onblur" onevent="setBlur()" />
<script>

function setFocus(){
	element.style.background = "green";
}

function setBlur(){
	element.style.background = "white";
}
</script>
</public:component>

[b]I css:[/b]
input	{behavior:url("markfocus.htc")}
icaaqMedlem sedan okt. 20004 910 inlägg
#8

coolt nitro2k01 :)

mv icaaq

Web-TorMedlem sedan nov. 200011 794 inlägg
#9

htc är verkligen smidigt att jobba med. :)
Vi använde det ganska flitigt i början av projektet. Problemet är att det är så satans segt! Av användarskäl har vi tyvärr tvingats "översätta" alla htc-lösningar till Javascript. :l

Genererad på 391 ms · cache AV · v20260730165559-full.f96bc7eb