Перейти к содержимому

Фотография

Проблема с onClick(а может и не с ним %))


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1 Taras

Taras

    Новый участник

  • Members
  • Pip
  • 24 сообщений
  • ФИО:Тарас Анатольевич Мордвинов
  • Город:Донецк

Отправлено 26 ноября 2010 - 19:17

Снова я уперся в проблему, которую не могу решить. Ситуация такая. Есть псевдовыпадающее меню, т.е поле, которое на onClick открывает скрытый списокопций. В фф в отлично, в ИЕ не появляется это скрытое окно, хотя кли проходит на ура. Не пог clickAt, mouseDown/Up, fireEvent(focus)+click, fireEvent(click), etc. Что делать не знаю, завтра еще подкину код страницы, сам не могу найти где вызывается onClick. Help Please!
  • 0

#2 OVA

OVA

    Опытный участник

  • Members
  • PipPipPipPip
  • 405 сообщений
  • ФИО:Высоцкий Сергей Павлович
  • Город:Новосибирск

Отправлено 29 ноября 2010 - 06:05

Для начала хотелось бы понять что такое "псевдовыпадающее меню" в данном случае. Собственно отсюда и плясать.
  • 0

#3 enki86

enki86

    Постоянный участник

  • Members
  • PipPipPip
  • 231 сообщений


Отправлено 29 ноября 2010 - 06:37

Для начала хотелось бы понять что такое "псевдовыпадающее меню" в данном случае. Собственно отсюда и плясать.

контекстный поиск?.. :unknw:

Taras, Давайте код
  • 0

#4 OVA

OVA

    Опытный участник

  • Members
  • PipPipPipPip
  • 405 сообщений
  • ФИО:Высоцкий Сергей Павлович
  • Город:Новосибирск

Отправлено 29 ноября 2010 - 07:33

контекстный поиск?.. :unknw:

Это не меню)
  • 0

#5 Taras

Taras

    Новый участник

  • Members
  • Pip
  • 24 сообщений
  • ФИО:Тарас Анатольевич Мордвинов
  • Город:Донецк

Отправлено 29 ноября 2010 - 09:26


контекстный поиск?.. :unknw:

Это не меню)

Всем доброе утро! Сегодня рассмотрел код, все ще хуже чем я думал. В разработке программисты используют Tibco General Interface если кто-то знает что это такое, а если в двух словах, это ср-во разработки со своими методами, в исходниках что-то написано в JavaScript, но лезть туда никто не хочет. Я думаю нет смысла выкладывать код, там создается Тибковский объект Select, который визуально выглядит как текстовое поле, которе на onClick делает видимым скрытый елемент с пунктами меню; после выбора пункта в текстовое поле присваивается value выбранного пункта. Надеюсь не слишком путано написал.
Остается только нажимать клавишу мышки на этом поле, но как?
  • 0

#6 OVA

OVA

    Опытный участник

  • Members
  • PipPipPipPip
  • 405 сообщений
  • ФИО:Высоцкий Сергей Павлович
  • Город:Новосибирск

Отправлено 29 ноября 2010 - 10:15

Давайте код элемента и скриптиков которые там могут оказаться задействованными)
  • 0

#7 Taras

Taras

    Новый участник

  • Members
  • Pip
  • 24 сообщений
  • ФИО:Тарас Анатольевич Мордвинов
  • Город:Донецк

Отправлено 29 ноября 2010 - 11:24

Очень сложно разрбраться, я боюсь не смогу представить вам код в красивом виде, но ладно, примерно так
Select_prototype._doClickItem = function(objEvent, objGUI) {
    var optionGUI = objEvent.srcElement();

    //locate the jsxid property for the option (an HTML element) that was clicked by the user
    while (optionGUI != null && (!optionGUI.getAttribute || optionGUI.getAttribute("jsxid") == null)) {
      optionGUI = optionGUI.parentNode;
      if (optionGUI == objGUI) optionGUI = null;
    }

    //a valid click event occurred; update the id of the selected item/deref the old item
    if (optionGUI != null) this._doSelectRecord(objEvent, optionGUI.getAttribute("jsxid"));

    //hide options group and give focus to the persistent sel box
    this.hide(true);
  };
Далее следует такой код
var strHTML = '<div tabindex="0" jsxselid="' + this.getId() + '"' +
          this.renderHandler(Event.KEYDOWN, "_doKeyDownItem") +
          this.renderHandler(Event.CLICK, "_doClickItem") +
          this.renderHandler(Event.MOUSEDOWN, "_doMouseDownItem") +
          this.renderHandler(Event.MOUSEOVER, "_doMouseOverItem") +
          ' jsxtype="Options" class="jsx30select_optionlist" style="' + this.paintBackgroundColor() +
          'min-width:' + spacerWidth + 'px;' + this.paintFontName() + this.paintFontSize() + this.paintFontWeight() +
          this.paintTextAlign() + '">' + spacer + strContent + '</div>';
Из этого следует, что _doClickItem=JSClick, просто Tiblo использует только свои методы. С программистом договорились сбацать костыль, типа того, что вся эта жесть будет вызываться каким-нибудь JS методом. Но это завтра, а сегодня я еще думаю.
  • 0


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных