No subject


Fri Apr 16 10:15:54 EDT 2010


BT.  First, it cannot properly respond to attributes in a dojo.query() =
call on JS XMLDocument objects (at least the ones EG delivers via unAPI).  =
That is, it will correctly do :

dojo.query("datafield", bib);

but fails on:

dojo.query("datafield[tag=3D245]", bib);

To get around this, we need to instead query the documentElement of the =
XMLDocument, not the XMLDocument itself.  Second, Opera does not work if =
the attribute is quoted within the query.  That is, it can correctly do :

dojo.query("datafield[tag=3D245]", bib);

but fails on:

dojo.query("datafield[tag=3D'245']", bib);

or:

dojo.query('datafield[tag=3D"245"]', bib);

The workaround here is to simply strip quotes from the query string before =
running it.

In limited testing, these changes did not have negative side effects for =
rdetail display in other current browsers.  I also have not deciphered =
whether Opera is simply be more strict than the other browsers, or whether =
these are genuine Opera bugs.

Please report back if you are able to test this patch.  Also, do you think =
these changes cross the line between 'compatibility fix' and 'compatibility=
 hack', and if so, are they worth considering for a minor browser?

Thanks,
Dan

--=20
***************************************************************************=
******
Daniel Wells, Library Programmer Analyst dbw2 at calvin.edu
Hekman Library at Calvin College
616.526.7133



--=__Part1D3104DD.0__=
Content-Type: application/octet-stream; name="bt_opera_fix.diff"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="bt_opera_fix.diff"

SW5kZXg6IEJpYlRlbXBsYXRlLmpzDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gQmliVGVtcGxhdGUuanMgIChy
ZXZpc2lvbiAxOTQ0NCkNCisrKyBCaWJUZW1wbGF0ZS5qcyAgKHdvcmtpbmcgY29weSkNCkBAIC05
MSw2ICs5MSw5IEBADQogICAgICAgICAgICAgICAgIChmdW5jdGlvbiAoYXJncykgew0KICAgICAg
ICAgICAgICAgICAgICAgdmFyIEJUID0gYXJncy5yZW5kZXJlcjsNCiAgICAgICAgICAgICAgICAg
ICAgIHZhciBwcm9jZXNzX3JlY29yZCA9IGZ1bmN0aW9uIChiaWIpIHsNCisgICAgICAgICAgICAg
ICAgICAgICAgICBpZiAoMSkgew0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBiaWIgPSBi
aWIuZG9jdW1lbnRFbGVtZW50Ow0KKyAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgICAgICAgICAgICAgICBkb2pvLmZvckVhY2goYXJncy5zbG90X2xpc3QsIGZ1bmN0aW9uIChz
bG90KSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZWJ1ZyA9IHNsb3QuZ2V0
QXR0cmlidXRlKCdkZWJ1ZycpID09ICd0cnVlJzsNCg0KQEAgLTEwOSw2ICsxMTIsMTEgQEANCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnkgeyAobmV3IEZ1bmN0aW9uKCAn
QlQnLCAnc2xvdFhNTCcsICdzbG90JywgdW5lc2NhcGUoY2IuaW5uZXJIVE1MKSApKShCVCxiaWIs
c2xvdCkgfSBjYXRjaCAoZSkgey8qbWVoKi99DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB9KTsNCg0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKDEpIHsNCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcXVlcnkgPSBzbG90LmdldEF0
dHJpYnV0ZSgncXVlcnknKTsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBx
dWVyeSA9IHF1ZXJ5LnJlcGxhY2UoLyJ8Jy9nLCAiIik7DQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgc2xvdC5zZXRBdHRyaWJ1dGUoJ3F1ZXJ5JyxxdWVyeSk7DQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2YXIgaXRlbV9saXN0ID0gZG9qby5xdWVyeSgNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzbG90LmdldEF0dHJpYnV0ZSgncXVlcnknKSwNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBiaWINCg==

--=__Part1D3104DD.0__=--


More information about the Open-ils-dev mailing list