20150722---点击按钮使指定的控件可见部分平移(JS)
前段代码:
<div id="out" style=" width:400px;overflow:hidden;">
<div id="int" style="white-space:nowrap;width:800px;">
<asp:Label ID="lblTable" runat="server" Text="Label"></asp:Label>
</div>
</div>
<label onmousedown="marqueeById('l'),ShowLbl('lblRight')" id="lblLeft" onmouseup="marqueeStop()" style="visibility: hidden"><<<<</label>
<label onmousedown="marqueeById('r'),ShowLbl('lblLeft')" id="lblRight" onmouseup="marqueeStop()" style="visibility: hidden">>>>></label>
注意:内层div宽度大于外层div,宽度的设定不仅局限于实际像素,也可使用百分比;js指向的的是外层div。外层div内部元素超出部分隐藏overflow:hidden,内层div的text不允许换行white-space:nowrap
后台:
protected void Page_Load(object sender, EventArgs e)
{
ShowMenu();
}
private void ShowMenu(int m)
{
string strTable = "";
for (int i = ; i <= m; i++)
{
strTable += "<a href=\"# \" class=\"nav\" ><span>" + i + "</span></a>";
}
lblTable.Text = strTable;
}
注意:自动生成的菜单栏;
JavaScript:
var speed = 10; //数字越大速度越慢
var getMoveId = document.getElementById("out"); //需要移动的控件ID
var getIntId = document.getElementById("int");
var getLeftId = document.getElementById("lblLeft");
var getRightId = document.getElementById("lblRight");
var myMark; //开关标记
function marqueeById(direction) {
direction == "r" ? moveRight() : moveLeft();
}
function marqueeStop() {
clearInterval(myMark);
if (getMoveId.scrollLeft == 0) {
getLeftId.style.visibility = "hidden";
}
if (getMoveId.scrollLeft == (getIntId.offsetWidth - getMoveId.offsetWidth)) {
getRightId.style.visibility = "hidden";
}
}
function moveRight() {
myMark = setInterval(function () { getMoveId.scrollLeft++ }, speed);
}
function moveLeft() {
myMark = setInterval(function () { getMoveId.scrollLeft-- }, speed);
}
function ShowLbl(id) {
var imgid = document.getElementById(id);
if (imgid.style.visibility == "hidden") {
imgid.style.visibility = "visible";
}
}
function load() {
if (getIntId.offsetWidth > getMoveId.offsetWidth) {
getRightId.style.visibility = "visible";
}
}
效果展示:
点击右侧箭头:
点击左侧:
20150722---点击按钮使指定的控件可见部分平移(JS)的更多相关文章
- WPF解决按钮上被透明控件遮盖时无法点击问题
原文:WPF解决按钮上被透明控件遮盖时无法点击问题 IsHitTestVisible="False" 在控件上设置如上属性即可,即可让透明控件不触发点击效果
- <iOS小技巧>UIview指定设置控件圆角
一.用法: 众所周知,设置控件的圆角使用layer.cornerRadius属性即可,但是这样设置成的结果是4个边角都是圆角类型. 利用班赛尔曲线画角: //利用班赛尔曲线画角 UIB ...
- NX二次开发-Block UI C++界面Specify Point(指定点)控件的获取(持续补充)
Specify Point(指定点)控件的获取 NX9+VS2012 #include <uf.h> #include <uf_ui.h> UF_initialize(); / ...
- VC++ 如何在显示对话框的时候,指定焦点控件!
很简单: 在你的CAddDlg类的OnInitDialog函数中加上你上面的代码GetDlgItem(IDC_EDIT1)->SetFocus();最后记得return FALSE; 其实,不知 ...
- MVVMLight 实现指定Frame控件的导航
原文:MVVMLight 实现指定Frame控件的导航 在UWP开发中,利用汉堡菜单实现导航是常见的方法.汉堡菜单导航一般都需要新建一个Frame控件,并对其进行导航,但是在MvvmLight框架默认 ...
- ADF控件ID变化引发JS无法定位控件的解决方法
原文地址:ADF控件ID变化引发JS无法定位控件的解决方法作者:Nicholas JSFF定义的控件ID到了客户端时往往会改变.例如在JSFF中的一个的ID为"ot1",但是当这个 ...
- Winform 后台将指定的控件集合添加到制定容器中
/// <summary> /// 把按钮按照行数分割排列 /// </summary> /// <param name="ControlArry"& ...
- C# 指定Webbrowser控件所用IE内核版本
如果电脑上安装了IE8或者之后版本的IE浏览器,Webbrowser控件会使用IE7兼容模式来显示网页内容.解决方法是在注册表中为你的进程指定引用IE的版本号. 比如我的程序叫做a.exe,以64位机 ...
- PB打开ole控件IE浏览器版本问题_指定Webbrowser控件所用IE内核版本(转)
如果电脑上安装了IE8或者之后版本的IE浏览器,Webbrowser控件会使用IE7兼容模式来显示网页内容.解决方法是在注册表中为你的进程指定引用IE的版本号. 比如我的程序叫做a.exe 对于32位 ...
随机推荐
- C# TCPListener
1: 有两个地方必须做异常处理,异常类型为IOException 服务器读客户端发来的信息时: LeafTCPClient client = (LeafTCPClient)ar.AsyncState; ...
- Ad Hoc Distributed Queries / xp_cmdshell 的启用与关闭
启用Ad Hoc Distributed Queries: reconfigure reconfigure 关闭Ad Hoc Distributed Queries: reconfigure reco ...
- [2019杭电多校第十场][hdu6701]Make Rounddog Happy
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6701 题目大意为求满足 $max(a_{l},a_{l+1}\cdot \cdot \cdot a_{ ...
- Snacks HDU 5692 dfs序列+线段树
Snacks HDU 5692 dfs序列+线段树 题意 百度科技园内有n个零食机,零食机之间通过n−1条路相互连通.每个零食机都有一个值v,表示为小度熊提供零食的价值. 由于零食被频繁的消耗和补充, ...
- js中基本数据类型与引用数据类型的本质区别
代码 /** * 基本数据类型:string, number, boolean, null, undefined. * * 说明: * 基本数据类型的变量是保存在栈内存中的,基本数据类型的值 * 直接 ...
- javascript Math取整&获取随机数
1.方法介绍 Math.ceil(n) 上取整,大于等于n返回与它最接近的整数 Math.floor(n) 下取整,小于等于n返回与它最接近的整数 Math.round(n) 四舍五入取整 Math. ...
- RAS
Reliability 高可靠性 Availability 高可用性 Serviceability 高服务性
- CreateProcessAsUser 服务调用
CreateProcessAsUser 函数 如果想通过服务向桌面用户Session 创建一个复杂UI 程序界面,则需要使用CreateProcessAsUser 函数为用户创建一个新进程用来运行相应 ...
- Android Studio使用阿里云Aliyun Maven仓库
如下所示,在build.gradle中添加Aliyun Maven仓库 // Top-level build file where you can add configuration options ...
- Linux wc -l 统计行数问题
统计文件行数 通过wc -l 来实现. [root@xguang_02 xguang]# wc -l tt.dat 798 tt.dat 而通过nl\ cat -n 查看时发现为79 ...