【问题标题】:How to override default template values in Zurb-Foundation within a Rails project如何在 Rails 项目中覆盖 Zurb-Foundation 中的默认模板值
【发布时间】:2014-01-16 12:06:08
【问题描述】:

我需要在 Foundation 3.2.5 库中覆盖一个特殊的 javascript 变量。我需要这样做,而不是仅仅为了这个改变而包含整个项目。

我愿意覆盖的变量在这个特定的文件 jquery.foundation.clearing.js 中

片段:

;(function ($, window, document, undefined) {
  'use strict';

  var defaults = {
        templates : {
          viewing : '<a href="#" class="clearing-close">&times;</a>' +
            '<div class="visible-img" style="display: none"><img src="#">' +
            '<p class="clearing-caption"></p><a href="#" class="clearing-main-left"></a>' +
            '<a href="#" class="clearing-main-right"></a></div>'
        },
        close_selectors : 'a.clearing-close',
        initialized : false,
        locked : false
      },

完整文件位于here

我要覆盖的变量是defaults.templates.viewing。如何在 Rails 中以最少的代码更改巧妙地实现这一点?我试图创建一个foundaiton_override.js 文件,但我不知道如何直接从那里访问特定变量并覆盖它。

【问题讨论】:

  • 无法更改给定代码 sn-p 中的值。这些值是在文字中声明的,而不是暴露给“外部”的。查看您问题的修订历史后,我注意到您的问题更加具体。您不能修改值本身,但您可以尝试通过挂钩您正在使用的库中的相关函数来修改值的解释。
  • @RobW:我正在尝试更改位于此文件中的默认值code.google.com/p/cdnjs/source/browse/ajax/libs/foundation/… 你能看一下并告诉我如何通过公开的公共方法来实现吗?
  • 快速浏览显示您可以通过cl.init 方法覆盖默认设置,而该方法又通过$().foundationClearing 公开。
  • @JeffShaver 括号前的分号是一种不常见的模式,可以简化 JavaScript 文件的连接。也不是完全没必要,见stackoverflow.com/questions/7365172/…
  • @RobW 我知道它是什么。这是不必要的。如果人们在连接文件时要小心,我们可以避免这种荒谬的趋势。适当使用分号。

标签: javascript ruby-on-rails ruby-on-rails-3 zurb-foundation


【解决方案1】:

找到解决方案here

$(document).foundationClearing({
    templates: {
      viewing: ''
  }
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-21
    • 2012-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多