Jquery UI滑动切换在简单的javascript
jquery ui slide toggle in simple javascript
我必须在简单的javascript中编写jquery UI滑动切换…
<center>
<button id="button" class="myButton">Read More</button>
</center>
<div id="myDiv">
<p>Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom. Cool Read More Content Here. Lorem Ipsom.</p>
</div>
$(".myButton").click(function () {
var self = $(this);
// Set the effect type
var effect = 'slide';
// Set the options for the effect type chosen
var options = { direction: $('left').val() };
// Set the duration (default: 400 milliseconds)
var duration = 1000;
$('#myDiv').toggle(effect, options, duration, function() {
if (self.text() == "Read More") {
self.text('Read Less');
} else {
self.text('Read More');
}
});
});
我必须使用纯JavaScript编码相同的功能,任何一个实现请帮助
这段代码可能会有所帮助:
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div >
<div id="test" style="height: 150px; width: 100px; background-color: yellowgreen; display:none">block</div>
</div>
<div> </div>
<div onclick="slideUp(document.getElementById('test'));" style="cursor:pointer;">slide Up</div>
<div> </div>
<div onclick="slideDown(document.getElementById('test'))" style="cursor:pointer;">slide down</div>
<script>
function slideDown(obj, speed) {
var mySpeed = speed || 300;
var intervals = mySpeed / 30; // we are using 30 ms intervals
//alert('intervals = ' + intervals);
var holder = document.createElement('div');//
var parent = obj.parentNode;
holder.setAttribute('style', 'height: 0px; overflow:hidden');
parent.insertBefore(holder, obj);
parent.removeChild(obj);
holder.appendChild(obj);
obj.style.display = obj.getAttribute("data-original-display") || "";
var height = obj.offsetHeight;
var sepHeight = height / intervals;
// alert(sepHeight)
var timer = setInterval(function() {
var holderHeight = holder.offsetHeight;
if (holderHeight + sepHeight < height) {
holder.style.height = (holderHeight + sepHeight) + 'px';
} else {
// clean up
holder.removeChild(obj);
parent.insertBefore(obj, holder);
parent.removeChild(holder);
clearInterval(timer);
}
}, 30);
}
function slideUp(obj, speed) {
var mySpeed = speed || 300;
var intervals = mySpeed / 30; // we are using 30 ms intervals
var height = obj.offsetHeight;
var holder = document.createElement('div');//
var parent = obj.parentNode;
holder.setAttribute('style', 'height: ' + height + 'px; overflow:hidden');
parent.insertBefore(holder, obj);
parent.removeChild(obj);
holder.appendChild(obj);
var originalDisplay = (obj.style.display !== 'none') ? obj.style.display : '';
obj.setAttribute("data-original-display", originalDisplay);
var sepHeight = height / intervals;
// alert(sepHeight)
var timer = setInterval(function() {
var holderHeight = holder.offsetHeight;
console.log(holderHeight);
if (holderHeight - sepHeight > 0) {
holder.style.height = (holderHeight - sepHeight) + 'px';
} else {
// clean up
obj.style.display = 'none';
holder.removeChild(obj);
parent.insertBefore(obj, holder);
parent.removeChild(holder);
clearInterval(timer);
}
}
, 30);
}
</script>
</body>
</html>
参考资料:这里…你也可以找到其他答案
相关文章:
- 简单javascript'新'关键字
- 我的剧本赢了'不能在IE中工作(甚至9)?修改复制文本的简单javascript
- 使用绑定的简单JavaScript/jQuery求和函数
- 我的简单Javascript代码可以在Safari上运行,但不能在Chrome、Firefox或Opera上运行
- DOM插入的简单javascript错误
- 简单Javascript代码中的Javascript错误
- 令人沮丧的简单 Javascript 需要帮助
- 简单 Javascript/jQuery Vimeo Froogaloop 的调试帮助
- 用于创建数学减法方程的简单JavaScript算法
- 返回“undefined”的简单JavaScript字符串变量
- 使用__proto__的简单JavaScript委派
- 使用简单 JavaScript 继承定义的文档方法
- 适合初学者的简单 Javascript 循环查询
- CRM 2011 - 选项集上的简单 JavaScript 确认框
- 时钟的简单JavaScript不起作用
- 为我的简单 JavaScript 函数添加回调功能
- 来自数据库数组的简单 Javascript 幻灯片
- 预加载图像并为我的 CSS 行的简单 Javascript 选项过渡
- 带有url的简单javascript正则表达式
- 带有switch语句的简单javascript