php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 21.07.2011, 14:43  
tommylee
Gast
 
Beiträge: n/a
Standard [Erledigt] Flackerndes Scrollen im IE 6-9

Hallo...,

baue gerade an 2 Textareas welche nebeneinander liegen und die rechte jeweils zum editieren u. die linke zur stets aktuellen Anzeige von Zeilenummer mit autom. scrollen dient (für ein Wb-FTP Programm).
Funzt prima im Firefox, im IE von 6-9 wird bei jeden Tastendruck die linke area sofort erneut aktualisiert...auch wenn ich in einer Zeile nur Text lösche ...im Firefox bleibt die Anzeige links dabei völlig ungerührt..

Hat jemand eine Idee wie man das Script Browser-kompatibel machen könnte ?

Code einfach in eine .html Seite rein und guggen was ich meine

Dankbar für jede Idee...
Gruß


Code:
<html>
<head>
<title>Test</title>
<style type="text/css">
.lnumbers 
{font-family:monospace; font-size:12pt; margin:0px; padding-top:0px; padding-bottom:0px; padding-right:0px; height:340px; } 
textarea.lnumbers {width:850px; } 
ol.lnumbers {text-align:right; position:relative; top:0px; left:15px; } 
div.lnumbers {float:left; overflow:hidden; padding:0px; } 
.clear {clear:both; }
</style>

<script type="text/javascript">

function count()
{
 var num_length = document.getElementById('nummerarea').value.split('\n').length-1;
 var area=document.getElementById('area').value.split('\n').length;
 var num=area+'\n';

if(num_length<area)
{
var countrows='';
for(i=1;i<=area;i++)
{
 countrows += i + ':\n';
}
 document.getElementById('nummerarea').value = countrows;
}
else if(num_length>area)
{
var countrowsdown='';
for(i=1;i<=area;i++)
{
countrowsdown += i + ':\n';
}
 document.getElementById('nummerarea').value = countrowsdown;
}
else
{
 document.getElementById('nummerarea').innerHTML =num;
}
}


function startcount()
{
var arealength = document.getElementById('area').value.split('\n').length;
var counter='';

for(i = 1;i<=arealength;i++)
{
counter += i + ':\n';
}
document.getElementById('nummerarea').value =counter;
document.getElementById('area').focus();
}


function scroll() 
{
document.getElementById('nummerarea').scrollTop = document.getElementById('area').scrollTop;
}
 
</script>
<style type="text/css">
<!--

#nummerarea  {
overflow:hidden;
width:60px;
height:400px;
font-family:Verdana;
font-size:12px;
line-height : 14px;
float:left;
//padding-left:10px;
border-right-width:0;
border-top-width:1px ;
border-left-width:1px;
border-bottom-width:1px;
border-color:red;
text-align:center;
}


#area {
height : 400px;
width : 800px;
font-family : Verdana;
font-size : 12px;
line-height : 14px;
border-width:1px;
border-color:green;
}
.edit
{
margin-left:50px;
}
-->
</style>
</head>
<body onload="startcount()">
<div class="edit">
<textarea id="nummerarea" readonly></textarea>
<textarea wrap="off" id="area" onscroll="scroll();"onkeyup="count(),scroll();" onkeypress="count();"></textarea>
</div>
<br><br>
</body>
</html>
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 21.07.2011, 14:56  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Das flackert wohl vor allem deswegen, weil das hier
Code:
function count()
{
 var num_length = document.getElementById('nummerarea').value.split('\n').length-1;
im IE nur bei jedem zweiten Tastendruck den richtigen Wert liefert.

Siehst du sehr gut, wenn du dir diesen Wert mal zur Kontrolle in document.title reinschreibst (bzw. auch gleich direkt document.getElementById('nummerarea').value.length da „anzeigen“ lässt) - und dann nur mit den Cursortasten durch deinen Text in der rechten Textarea läufst.

Ich denke, du rufst die Funktion einfach „zu oft“ auf, so dass sie auch zu Zeitpunkten aktiv wird, wo document.getElementById('nummerarea').value gerade nicht das „richtige“ enthält.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 31.07.2011, 19:37  
tommylee
Gast
 
Beiträge: n/a
Standard

hat etwas gedauert...vielen Dank für Deinen Tipp...das ging in die richtige Richtung.

Jetzt funzt es so (fast) wie es soll...werde das fertige Script in der Scriptbörse bereitstellen...vieleicht nützt es dem einen oder anderen ja

gruß
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Formulargröße-ohne Scrollen nach rechts? realmadrid77 PHP Einsteiger 2 10.02.2011 12:54
Div will nicht scrollen smilla HTML, Usability und Barrierefreiheit 5 10.01.2011 01:19
Inhalt im Textfeld per Mausklick scrollen goodie JavaScript, Ajax und mehr 1 18.11.2010 10:46
JS - Div mittig ->auch beim Scrollen luks2com JavaScript, Ajax und mehr 1 11.11.2010 17:59
[Erledigt] IM Div Scrollen Lollix JavaScript, Ajax und mehr 0 01.01.2010 17:06
Js kalender zerschießt Frames + Button bei scrollen kid01 HTML, Usability und Barrierefreiheit 4 06.08.2007 14:53
FF: scrollen an inhalt anpassen HTML, Usability und Barrierefreiheit 2 21.12.2005 14:51
FF: scrollen an inhalt anpassen PHP Tipps 2007 2 21.12.2005 14:17
Js - Div Scrollen Buhmann HTML, Usability und Barrierefreiheit 0 18.11.2005 21:49
Scrollen HTML, Usability und Barrierefreiheit 15 11.08.2005 14:02
nach unten scrollen one scrollschieber an der seite? $$$ ThiKool $$$ HTML, Usability und Barrierefreiheit 4 31.07.2005 12:19
Navigation beim scrollen mit bewegen HTML, Usability und Barrierefreiheit 8 23.05.2005 15:13
Tabelle Scrollen lassen WarrenFaith HTML, Usability und Barrierefreiheit 2 07.10.2004 16:30
[Erledigt] Text scrollen lassen HTML, Usability und Barrierefreiheit 1 31.07.2004 20:56
[Erledigt] automatisch scrollen HTML, Usability und Barrierefreiheit 2 17.07.2004 13:39

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
scrollbarer bereich für ie, text crollt nicht unter ie, internet explorer 8 flackert, scrollbarer bereich ie, ie scrolling div text, document.getelementbyid(\scroll\).style.margin right, firefox scrollen flackern 2011, ie8 onscroll flackert, internet explorer flackert, flackernde schrift beim scrollen, internet explorer 9 flackert text über text, firefox flackert beim scrollen, document.getelementbyid nur für ie, 2011 firefox 6. flackert, onscroll javascript flackert, internet explorer 8 flackert beim srollen, internet explorer flimmert beim scrollen, firefox schrift scrollen 2011, firefox 6 schrift scrollen, textarea internet explorer nicht editierbar

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:20 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum