Мой подход к настройке пользовательского интерфейса значительно отличается - представьте, что я прихожу в компанию, где они делают то же самое более 6 лет, и я хочу начать все вокруг. Это встретило некоторое сопротивление, поэтому я надеюсь, что мой опыт поможет вам начать.
Я из опыта работы с пользовательским интерфейсом и сразу же хотел поделиться своими знаниями с отчетами, которые мы разрабатывали. Это требовало такта, так как я хотел показать ценность хорошо спроектированного пользовательского интерфейса, не шокировав и не напугав всех, кто его использует (сменить неприятности и тому подобное). Я справился с этим, работая с отчетами, а не над самими файлами Cognos.
В тот момент, когда вы начинаете работать с основными файлами, будь то CSS, Javascript или CGI, сразу же возникает очевидный риск, что он полностью сломается при обновлении. Я справился с этим, создав элементы HTML в своих отчетах и вызвав ресурсы оттуда. Например, этот элемент HTML есть практически в каждом заголовке моих отчетов:
<link type="text/css" href="cognos8/common/css/ui-lightness/jquery-ui-1.8.5.custom.css" rel="Stylesheet" />
<link type="text/css" href="custom.css" rel="Stylesheet" />
<script type="text/javascript"
src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript"
src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js"></script>
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function() {
}); // End Ready
</script>
Так что теперь у меня есть доступ к jQuery, UI Framework и всему остальному. Я указываю переопределения в моем custom.css
и строю свой взгляд оттуда. Это может показаться громоздким, но IBM умеет обновлять основные версии и полностью уничтожать соглашения и функции именования, поэтому, если ваш селектор CSS отключен, он «по умолчанию» соответствует оригинальному стилю IBM.
Именно так мне и пришлось обойти это, и я не совсем уверен, что это лучший способ. Я работал с тем, что у меня есть, которое не имеет доступа к файлам сервера или что-то в этом роде. Просто подумайте, что это супер-безопасный подход.