【发布时间】:2012-01-12 20:53:36
【问题描述】:
最近我一直在尝试深入研究高级(对我来说很好)编程概念,例如抽象和函数式编程等。这让我开始尝试使用匿名函数。
我有一种情况,动态生成的值没有通过使用.css({}) 的匿名函数应用于目标元素。我认为这与我研究中带有对象文字的错误翻译有关。
Chrome 和 FF 控制台都没有抛出任何错误,所以我想请教专家。
我做了一个小提琴,但效果不是很好。我只是要链接开发站点上涉及的资源。
这是我用来玩/实验和尝试新事物的开发网站。
js文件:http://dev.kenstowell.net/scripts/scripts.js
当然,一切都可以通过调试器控制台找到。
好的,这就是预期的行为:
-
在
(window).load上,initDOM()被调用。$(window).load(function(){ //Style Initial Dom Elements initDOM(); }); -
在
initDom()内部,我尝试通过调用setElemMargin()并为其提供适当的参数来设置与父容器相关的上边距。setElemMarg("#main-content-one", "#intro-text", "#intro-text", "margin-top"); -
setElemMarg()获取提供的 args 的高度并使用它们来计算要在.css()映射中设置的边距。var setElemMarg = function(elem1, elem2, elemTrgt, propName){
var margH = (getH(elem1) - getH(elem2)) / 2;
$(elemTrgt).css({propName : margH});
console.log(elem1, elem2, elemTrgt, propName, margH); }var getH = function(elem){ return $(elem).height(); console.log($(elem).height()); } -
将计算出的边距应用于
margin-top。 (从上面的方法)$(elemTrgt).css({propName : margH});
感谢任何看到这个的人。请随时给我一些建设性的批评。当你还是一个崭露头角的开发人员时,也许你希望拥有一些。 :)
肯
【问题讨论】:
标签: javascript jquery css