如何在不使用任何循环的情况下增加元素的宽度
how to increase the width of an element without using any loops
每当我们想增加宽度时,如果一个元素或高度,我们总是认为......okey for loop 将是该代码的一部分...因为你知道我们必须一次又一次地继续增加宽度属性的值。
我们脑海中有一些模糊的代码,如下所示:
var somefunction = function(elementName,width){
var var1 = docuemnt.getElementById(elementName), //some more variable
/*
maybe complicated or simple codes
*/
for( var i = var1.clientWidth; i<=....., i++ ){
// some code in this loop
}
}
你知道当我搜索如何增加元素的宽度时,所有的答案代码都有for
循环
但是现在我想要的是,在不使用任何循环的情况下,是否有其他方法可以解决此函数?
谢谢!
执行此操作的最佳方法是使用以下代码执行此操作setInterval
:
它只使用setInterval
. 你知道它会在每个设定的间隔后继续重复自己。
function c (e,s,v){
var ele = document.getElementById(e),
width= ele.clientWidth;
var incInWidthOfEle = setInterval(function(){
if (width <= s) {
increase();
}else{
stop_();
};
}, v);
var increase = function(){
ele.setAttribute('style', 'width:' + width +'px;');
width++ ;
};
var stop_ = function(){
clearInterval(incInWidthOfEle);
};
};
c('d1', 500, 10);
#d1{
width: 100px;
height: 100px;
background-color: #eee;
}
<body>
<div id="d1" style="width:200px;"></div>
</body>
下面是一个使用 javascript 的代码片段,transition
window.onload = function(){
setWidth(500);
}
function setWidth(width) {
var1 = document.getElementById("div");
div.style.width = width + "px";
}
<style>
#div {
background: #0099CC;
width: 100px;
height: 50px;
transition: width 5s;
-moz-transition: width 5s;
-webkit-transition: width 5s;
}
</style>
<div id="div"></div>
相关文章:
- 如何在未直接触发的情况下停止事件
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 在不使用jquery的情况下查找页面中的所有锚点并附加函数
- 在不打开聊天屏幕的情况下制作Zopim-ding代理
- 在不阻止默认行为的情况下检测IE10中的缩放
- 如何在不传递此信息的情况下查找被调用的元素
- 如何在不刷新页面的情况下更新显示框
- 有没有一种方法可以在控制台关闭的情况下让console.log()在IE中记录消息
- JavaScript-在手机上不工作的情况下,在外部单击时隐藏元素
- 在我的情况下,如何进行http请求
- 如何在不使用for循环的情况下增量增加变量的值
- 在不增加分析跳出率的情况下,绑定网页上的内部链接以动态加载
- 在不增加滚动条宽度的情况下缩放网页?或指定滚动条宽度
- 如何在不使用任何循环的情况下增加元素的宽度
- 在不移动贴图的情况下增加贴图容器大小的宽度
- 游戏如何在不影响db的情况下每小时增加x个金币?
- 如何在不影响td2的情况下增加td1的大小
- 为什么count++在我的情况下不会增加
- 如何在不增加子表达式计数的情况下匹配子表达式中的n+实例
- 在不增加文本区域大小的情况下调整文本区域的字体大小