原型JS查找跨度并替换文本

Prototype JS find span and replace text

本文关键字:替换 文本 JS 查找 原型      更新时间:2023-09-26

我正在为这个原型而挣扎。基本上,我使用的是Magentogo,它使用的是原型框架,在我的产品页面上有一个到尺寸指南的链接,我需要做的是为此创建一个弹出模式,这样用户就可以留在页面上。

<span class="widget widget-cms-link"><a href="/size-guide" title="Size Guide">
  <span>Size Guide</span>
 </a>
</span>

我需要做的是找到span"widget widget cms链接",然后用一个我可以用来激活模式弹出的按钮替换链接。我可以在JQuery中这样做,但它与Prototype冲突。有人有原型的经验吗?

干杯

J

这样行吗?

​$$('.widget.widget-cms-link').each(function(el) {
    el.down('a').replace(new Element('button', {
        'class' : 'widget-button'        
    }).observe('click', function() {
        alert('you clicked on me');
    }).update('Your New Button'));
})​;​

请记住,因为$$返回Enumerable,所以它可以返回倍数,因此我使用each。如果只想引用一个链接,请给它一个id,或者确保页面上只有一个widget-cms-link

小提琴这里

如果你对jQuery比Prototype更熟悉,那么你可以尝试使用noConflict模式,并运行你的jQuery函数。

只需在jQuery文件的末尾添加jQuery.noConflict()(或者将此代码插入单独的文件中,并将其包含在主jQuery文件之后)。

完成后,您应该能够使用jQuery,只需记住在jQuery函数中使用关键字jQuery,而不是$