【问题标题】:Adding placholder attribute to Magento CMS page将占位符属性添加到 Magento CMS 页面
【发布时间】:2013-07-22 01:14:42
【问题描述】:

我无法将占位符属性添加到 Magento CMS 页面中的输入元素。像这样的:

<input type="text" placeholder="Hello" />

我继续保存 CMS 页面,但是,在我看来,Magento 覆盖了占位符属性,从而阻止了通常在 HTML 中看到的占位符显示。

有没有办法做到这一点?

【问题讨论】:

    标签: html magento placeholder


    【解决方案1】:

    这个有点棘手。如果您检查您的cms_page 数据库表,您会发现Magento 实际上是使用placeholder 属性保存您的HTML 标记。此外,如果您通过前端而不是管理界面查看页面,您会发现 Magento 呈现您的占位符属性。

    问题是,Magento 的 tinymce 编辑器被配置为去除无效的 input 属性,并且此列表尚未更新以反映 HTML5 中的更改。

    如果您使用的是相当现代的 Magento 版本,您可以通过将以下 javascript 插入管理页面来解决此问题 tinymce javascript 已加载,但 之前 magento 运行内联 wysiwygpage_content = new tinyMceWysiwygSetup... javascript。 警告:我只是把它放在一起,它可能不适用于所有浏览器。买家当心,测试等。

    if(tinyMceWysiwygSetup)
    {
        tinyMceWysiwygSetup.prototype.originalGetSettings = tinyMceWysiwygSetup.prototype.getSettings;
        tinyMceWysiwygSetup.prototype.getSettings = function(mode)
        {
            var settings = this.originalGetSettings(mode);
            settings.extended_valid_elements = 'input[placeholder|accept|alt|checked|disabled|maxlength|name|readonly|size|src|type|value]';
            return settings;
        }
    }
    

    更新:我有一个new module,它提供了一种简单的机制,可以将这些 TinyMCE 设置添加到 Magento 的编辑器中。

    【讨论】:

    猜你喜欢
    • 2011-09-17
    • 2015-11-05
    • 1970-01-01
    • 1970-01-01
    • 2012-04-22
    • 2016-05-15
    • 2014-12-10
    • 2023-03-09
    • 1970-01-01
    相关资源
    最近更新 更多