2013-04-25 3 views
0

Я использую jdev11.1.1.6ADF: JQuery, чтобы указать конкретный элемент на странице

Если мне нужно, чтобы перейти к вершине page..this отлично работает ..

var scrollTop = function (event) { 
$('.mainWrapper,body,html').animate({ 
scrollTop : 0 
}, 'slow'); 
} 

я называю он из pqr.jsff в

<af:commandLink text="click test" clientComponent="true" id="col7"> 
<af:clientListener method="scrollTop " type="click"/> 
</af:commandLink> 

link where it directs it to specific element

Я изменил свою функцию, как показано ниже, но это не работает для т е

var scrollToSpecificPosition= function (event) { 
$('.mainWrapper,body,html').animate({ 
scrollTop : $("#gl1").offset().top 
}, 'slow'); 
} 

ГЛ1 это идентификатор, где я хотел бы указать

<af:goLink id="gl1" text="test"></af:goLink> 

Я называю это из pqr.jsff, как

<af:commandLink text="click test" clientComponent="true" id="col7"> 
<af:clientListener method="scrollToSpecificPosition" type="click"/> 
</af:commandLink> 

ответ

0

Я думаю, проблема является поле Id.
Идентификатор «gl1» является правильным идентификатором для компонента adf, но в html-dom он будет немного другим, поскольку сам компонент adf может иметь сложную структуру html и поддерживать уникальный adf adf, добавляет к нему идентификатор родителей в качестве префикса , и т. д.
Еще одна вещь. Вы должны проверить, что для параметра clientComponent установлено значение «true», чтобы убедиться, что этот компонент будет доступен в dom. Затем найдите что-то вроде реального компонента компонента FireBug,

может показаться немного более сложным, что-то вроде «pt1: pg1: gl1: link». И если вы уверены, что ваш код всегда будет работать в одном окружении, вы можете жестко указать этот идентификатор. Другими параметрами являются использование маски для поиска вашего компонента.

Также вы можете попробовать использовать AdfPage (родной js lib), чтобы получить доступ к компонентам adf по их исходному идентификатору (хотя он не так прост в использовании и имеет некоторые ограничения).

Смежные вопросы