[
https://jira.jboss.org/jira/browse/RF-5512?page=com.atlassian.jira.plugin...
]
Christopher Shubert commented on RF-5512:
-----------------------------------------
This happens for any CSS @ rule. The problem manifests on FireFox 3, but not on IE 6.
The problem is in the Utils.js file associated with ScrollableDataTable. The function
Utils.getrule() is the cause of the problem. I have included a reference version of the
function (from the 3.3.0 release) below.
On line 7, a reference is made to rules[i].selectorText. This member does not apply to
type 2 rules (@ rules), so any @ rule in any associated CSS will cause this method to
fail. That will result in the placement of headers and frozen columns failing for
ScrollableDataTable.
A proposed fix is to modify line 7 of the getRule function to read:
7 if (rules[i].type == 1 && rules[i].selectorText.toLowerCase() ==
(className.toLowerCase())) {
Thus avoiding references to selectorText for @ rules.
1 Utils.getRule = function (className) {
2 var rule = null;
3 var sheets = document.styleSheets;
4 for (var j = 0; !rule && j < sheets.length; j++) {
5 var rules = sheets[j].cssRules ? sheets[j].cssRules: sheets[j].rules;
6 for (var i = 0; !rule && i < rules.length; i++) {
7 if (rules[i].selectorText.toLowerCase() == (className.toLowerCase())) {
8 rule = rules[i];
9 }
10 }
11 }
return rule;
};
Scrollable DataTable cannot be used when adding @charset statement to
css files.
--------------------------------------------------------------------------------
Key: RF-5512
URL:
https://jira.jboss.org/jira/browse/RF-5512
Project: RichFaces
Issue Type: Bug
Components: ScrollableDataTable
Affects Versions: 3.2.2
Environment: windows xp + glassfish v2u2 + jdk 1.6
Reporter: Rong Tao
Assignee: Konstantin Mishin
Fix For: Future
This is a very strange bug, when I add a statement '@charset "utf-8"'
to a css file or the css section of the xhtml file, the Scrollable DataTable becomes very
strange and cannot be used, the problems are:
1. the table header is not displayed.
2. scroll bar is not displayed.
3. cannot select any rows.
4. the 1st and 2nd columns are overlap.
Very easy to reproduce: download and deploy the demo scrollableDataTable.xhtml and
DataTableScrollerBean.java; then add '@charset "utf-8"' to
scrollableDataTable.xhtml, the <style> section of the page should be like this:
<style>
@charset "utf-8";
.scrolls{
width:300px;
height:200px;
overflow:auto;
}
</style>
Refresh the page and you will see the problems.
Not only "utf-8", other charset such as "iso-8859-1" can also cause
the issue.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira