Что не так с моим кодом слайда mootools? - PullRequest
0 голосов
/ 09 февраля 2010

Я создаю раздел контента для аккордеона, используя mootools. Вот HTML-код, с которым я работаю:

<div class="content-add">
    <div class="item html 18" id="dditem_26">
        <a id="ddlink_26"></a>
        <a href="#" class="open ddheader"><strong>F. Tony Hosseini</strong></a>
        <p>F. Tony Hosseini is the Founder and Chairman of the FTH Group of companies.  He has over 30 years of experience in international business development, finance and private syndication work, developing and syndicating over $500 million dollars of industrial, commercial and residential projects around the world.</p>
        <p>Before coming to the United States, Tony lived in Iran (Persia) where he served as the project Quality Control officer for National Construction Company, developing the natural gas line between Iran and the USSR. He was also a General Partner for Iran-America Insurance Company, a multi-line insurance operation in the southern region of Iran.</p>
    </div>
    <div class="item html 19" id="dditem_25">
        <a id="ddlink_25"></a>
        <a href="#" class="open ddheader"><strong>Robert J. O'Leary</strong></a>
        <p>Robert J. (Bob) O'Leary is Vice Chairman of the FTH Group of companies.  He also serves as a partner at Insignia Building, LLC, a leading construction company operating in high-end residential communities in the Carolinas.  Bob brings with him over 30 years to the field of corporate public affairs, including communications, government affairs and brand management.</p>
        <p>A native of Pennsylvania, Bob is a graduate of Penn State University, where he was named an Alumni Fellow.  He serves on the Board of Visitors of the university's College of Communications, the college's campaign development committee, and regularly guest lectures and mentors students at the university.  He resides in Greenville, South Carolina.</p>            
    </div>
</div>

Цель состоит в том, чтобы весь контент под каждым с классом 'open' выдвигался или включался (переключался) при каждом нажатии a.open. Вот Mootools JS у меня до сих пор:

$$('#content a.open').each(function(_link,i){
    var _slide = _link.getNext('div.slide');
    _slide.fx = new Fx.Slide(_slide).hide();
    _link.addEvent('click', function(){
        _link.toggleClass('open-slide');
        _slide.getParent('.contentcol').getElements('.slide').each(function(slide) {
            slide.slide('out');
        });
    _slide.fx.toggle();
});

Ползунок «работает», как и ожидалось, за исключением того, что большую часть времени слайды являются чрезвычайно изменчивыми и «кричащими», так как во время слайда контент случайным образом исчезает и быстро появляется снова. Пример этого см. http://fthgroup.blueinkcms.com/about_us/leadership_team# и щелкните по одному из имен.

Есть идеи, что я могу делать не так?

1 Ответ

2 голосов
/ 09 февраля 2010

код, который вы разместили, не соответствует разметке вашего сайта. Вы также должны обновить до mootools 1.2.4, если это возможно.

в любом случае, устранение неполадок в этом и Fx.Slide для проблем с низкой производительностью (через исходные файлы вашего сайта), вероятно, заняло бы намного больше времени, чем написание с нуля.

http://www.jsfiddle.net/P9zJa/ -> это прекрасно работает, переработан для использования класса, я надеюсь, что это даст вам некоторые идеи. с небольшими или никакими изменениями в html, которые он улучшает, но обратите внимание, что я обернул p в div.content

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...