Hallo,
ich habe folgenden Sachverhalt. Tabelle mit drei Spalten, wobei die mittlere Spalte nur ein vertikaler Strich ist. Dieser Strich soll es ermöglichen die "Begrenzung" der beiden Spalten nach beiden Seiten zu verschieben.
Hierzu wurde mit JavaScript eine dementsprechende Funktionalität geschrieben.
=> in ein HTML-File eingebunden => getestet => basst!
=> in ein JSF-File eingebunden => Problem!
Das Problem scheint meiner Meinung nach das Neuzeichnen zu sein. Unter JSF liest er genauso die x-Position aus, die er aktuell hat und die die er zukünftig haben soll. Aber das Neuzeichnen bleibt aus.
Hier mal die JavaScript-Funktionalität zum Neuzeichnen:
ich habe folgenden Sachverhalt. Tabelle mit drei Spalten, wobei die mittlere Spalte nur ein vertikaler Strich ist. Dieser Strich soll es ermöglichen die "Begrenzung" der beiden Spalten nach beiden Seiten zu verschieben.
Hierzu wurde mit JavaScript eine dementsprechende Funktionalität geschrieben.
=> in ein HTML-File eingebunden => getestet => basst!
=> in ein JSF-File eingebunden => Problem!
Das Problem scheint meiner Meinung nach das Neuzeichnen zu sein. Unter JSF liest er genauso die x-Position aus, die er aktuell hat und die die er zukünftig haben soll. Aber das Neuzeichnen bleibt aus.
Hier mal die JavaScript-Funktionalität zum Neuzeichnen:
Code:
function grid_resize_callback( e ) { var curr_x; if ( ( ! browser_is_IE ) && ( e.pageX ) ) curr_x = e.pageX; else curr_x = event.x; if ( _resize_start_x == -1) { _resize_start_x = 1; _resize_start_x = curr_x - _resizing_cell.offsetWidth; } if ( curr_x <= _resize_start_x ) { curr_x = _resize_start_x + 1; } _resizing_cell.width = ( curr_x - _resize_start_x); //_resizing_cell is an Object of the HTML Cell //alert('_resizing_cell.width: '+_resizing_cell.width); }
Code:
/** * Sets onmousedown and onmouseup-events for the resizable column. */ function attachListeners() { //Getting all Tag-Elements from "td" from the document var allElems = document.getElementsByTagName('td'); //Getting the first Element with the class Name "vs_td1" for (var i = 0; i < allElems.length; i++) { tmp = allElems[i]; if (tmp.className == 'vs_td2') { tmp.onmousedown = function() { grid_resize_cell_down(); } tmp.onmouseup = function() { grid_resize_cell_up(); } } } }