0

我正在设置dijit.form.HorizontalSlider带有标签和规则的标签,但我无法让显示器正常工作。滑块显示在规则和标签的顶部。我可以看到放置标签和规则的 div 没有高度属性,我猜这就是我的问题,但我似乎无法修复它。

这是代码...

//create a div for the rule in my inner node div
this.ruleDiv = dojo.create("div", {}, dojo.byId("ruleDiv"), "first");
this.getInnerNode().appendChild(this.ruleDiv);

//create a div for the labels in my inner node div
this.labelsDiv = dojo.create("div", {},dojo.byId("labelsDiv"), "first");
this.getInnerNode().appendChild(this.labelsDiv);

//create the rule object
this.sliderLabelsRule = new HorizontalRule({
    container: "topDecoration",
    count: 10
}, this.getLabelsRuleDiv());

//create the labels object  
this.sliderLabels = new HorizontalRuleLabels({
    container: "topDecoration",
    labelStyle: "font-size: 10px;",
    labels: ["test0", "test1", "test2", "test3", "test4", "test5", 
             "test6", "test7", "test8", "test9"]
}, this.getLabelsDiv());

//create the slider   
this.slider = new Slider({}, this.getInnerNode());

//startup the widgets
this.getSlider().startup();
this.getLabelsRule().startup();
this.getLabels().startup();

我试过交换东西并尝试了很多不同的方法,但我似乎找不到正确的组合,感谢任何帮助!

4

1 回答 1

1

在您的 Horizo​​ntalRule 构造函数中,添加一个样式属性来设置高度。像这样的东西。

this.sliderLabelsRule = new HorizontalRule({
  container: "topDecoration",
  count: 10,
  style: "height: 5px;"
}, this.getLabelsRuleDiv());

我有一个类似的问题,我的所有标签和规则都在滑块下方,但也直接堆叠在一起,所以我有十个标签和规则乱七八糟,我不得不将上述构造函数中的宽度设置为相同的宽度作为我的滑块并使用 position: absolute 将它们移动到正确的位置。要将它们准确地放在您想要的位置,您可能需要做类似的事情。只需在构造函数的 style 属性中使用 css

于 2013-08-14T14:16:45.173 回答