根据django模板中的位置生成类名?

时间:2014-11-26 11:22:16

标签: django

是否可以使用模板标签在Django模板中执行以下操作?我有一些生成的div,例如。

DIV-TEMPLATE.HTML

<div class="id-{{ id_num }}-pos{{ id_pos }}"></div>

许多其他模板文件通过使用模板标记包含此文件,例如

{% render_div div_id="980x250" %}

模板标记设置为使用第一个代码段作为其模板。我想知道的是,是否有可能让django动态获取div的位置(通过模板标签中的某些逻辑)。例如,如果我在页面上垂直向下移动div,我希望第一个div将其类作为

<div class="id-980x250-pos1"></div>

如果这是将{% render_div ad_id="980x250" %}传递给render div模板标记的参数。

第二个div有

<div class="id-300x250-pos2"></div>

如果这被称为{% render_div ad_id="300x250" %}等等。

逻辑上我试图将我的大脑包裹起来,有一个被调用的模板,我需要它,以便根据从顶部(1)到底部的位置生成pos值。我无法将div_pos值传递给模板标记,因为某个特定模板中的模板标记可能会在另一个模板中使用,因此该位置不正确。

有点难以解释,但希望你明白了。

1 个答案:

答案 0 :(得分:0)

我不认为这在django中是可能的,因为django不会渲染生成的html。 (即使它会这样,我也不认为你可以保证与现有的不同浏览器相同的结果。)。

执行此操作的最佳方法可能是使用一些JavaScript。例如,JQuery有function that returns the position of an element