求大神指点 怎么实现如下document.onmousemovee事件

DataGrid中的每一行,绑定onmouseover、onmousemove、onmouseout事件
实现原理:
为DataGrid中的每一行,绑定onmouseover、onmousemove、onmouseout事件,使的鼠标移动到行内时,自动显示一个&div&,鼠标移出该行,就把这个&div&隐藏掉。
实现代码:
定义&div&的样式:
&style type="text/css"&
.transparent { FILTER: alpha(opacity=85);
BORDER-TOP: indianred 1
BORDER-RIGHT: indianred 1
BORDER-LEFT: indianred 1
BORDER-BOTTOM: indianred 1
BACKGROUND-COLOR:
DISPLAY: none& }
显示和隐藏窗体的脚本:
&script language="javascript"&
//显示弹出窗体
function Show(Country, City, Address, PostalCode, Phone, Fax)
document.getElementByIdx("td1").innerText="国家:"+C
document.getElementByIdx("td2").innerText="城市:"+C
document.getElementByIdx("td3").innerText="地址:"+A
document.getElementByIdx("td4").innerText="邮政编码:"+PostalC
document.getElementByIdx("td5").innerText="电话:"+P
document.getElementByIdx("td6").innerText="传真:"+F
//获得鼠标的X轴的坐标
x = event.clientX + document.body.scrollL
//获得鼠标的Y轴的坐标
y = event.clientY + document.body.scrollTop + 20;
//显示弹出窗体
Popup.style.display="block";
//设置窗体的X,Y轴的坐标
Popup.style.left =
Popup.style.top =
//隐藏弹出窗体
function Hide()
//隐藏窗体
Popup.style.display="none";
ToolTip窗体的代码
&div id="Popup" class="transparent" style=" Z-INDEX:
&table border="0" cellpadding="0" style="FONT-SIZE:
&td align="middle" bgcolor="indianred"&&font
color="white"&联系方式&/font&&/td&
&tr&&td id="td1"&&/td&&/tr&
&tr&&td id="td2"&&/td&&/tr&
&tr&&td id="td3"&&/td&&/tr&
&tr&&td id="td4"&&/td&&/tr&
&tr&&td id="td5"&&/td&&/tr&
&tr&&td id="td6"&&/td&&/tr&
private DataT
private void Page_Load(object sender, System.EventArgs
// Put user code to initialize the page here
if(!IsPostBack)
SqlConnection cnn = new SqlConnection();
cnn.ConnectionString = "data source=initial
catalog=Npassword=;"
+"persist security info=Tuser id=workstation
id=APJ062;packet size=4096";
string sqlstr = "select Top 16 CustomerID, CompanyName,
ContactTitle,Country, City, Address,PostalCode,Phone,Fax from
Customers";
cnn.Open();
SqlDataAdapter ad = new SqlDataAdapter(sqlstr,cnn);
dt = new DataTable();
ad.Fill(dt);
grdCustomer.DataSource =
grdCustomer.DataBind();
private void grdCustomer_ItemDataBound(object sender,
System.Web.UI.WebControls.DataGridItemEventArgs e)
if(e.Item.ItemType == ListItemType.AlternatingItem
|| e.Item.ItemType == ListItemType.Item)
e.Item.Attributes.Add("onmouseover",
"this.oldcolor=this.style.backgroundCthis.style.backgroundColor='#C8F7FF';");
e.Item.Attributes.Add("onmousemove",
"Show('"+dt.Rows[e.Item.ItemIndex]["country"].ToString()+"','"
&&&&&&&&&&&&&&&&&&&&&&
+dt.Rows[e.Item.ItemIndex]["City"].ToString()+"','"
&&&&&&&&&&&&&&&&&&&&&&
+dt.Rows[e.Item.ItemIndex]["Address"].ToString()+"','"
&&&&&&&&&&&&&&&&&&&&&&
+dt.Rows[e.Item.ItemIndex]["PostalCode"].ToString()+"','"
&&&&&&&&&&&&&&&&&&&&&&
+dt.Rows[e.Item.ItemIndex]["Phone"].ToString()+"','"
&&&&&&&&&&&&&&&&&&&&&&
+dt.Rows[e.Item.ItemIndex]["Fax"].ToString()+"');");
e.Item.Attributes.Add("onmouseout",
"this.style.backgroundColor=this.Hide();");
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。所有回答(1)
个人认为window是全局的 控件是局部的 当你拖动控件的时候也触发window的 俩者冲突 内部机制就不知道了 你可以在window事件里面判断你想用的某个控件是否获取焦点再执行控件的事件
&&&您需要以后才能回答,未注册用户请先。这个搜索功能怎么实现呀?求大神帮忙指点,谢谢!下面是代码
主程序的:
public class MainActivity extends Activity {
private ListV
private MedicineSer
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
medicineservice = new MedicineService(this);
listview = (ListView) this.findViewById(R.id.listview);
Button button = (Button)findViewById(R.id.mybutton);
button.setOnClickListener(new ButtonClickListener());
public class ButtonClickListener implements View.OnClickListener{
EditText txt = (EditText) findViewById(R.id.myEdit);
private String qwe = txt.getText().toString();
public void onClick(View v) {
List&Medicine& medicines = medicineservice.getScrollData(0, 10);
medicineservice.find(this.qwe);
MedicineAdapter adapter = new MedicineAdapter(this, medicines, R.layout.item);
List&HashMap&String,Object&& data = new ArrayList&HashMap&String,Object&&();
for(Medicine medicine : medicines){
HashMap&String,Object& item = new HashMap&String,Object&();
item.put("name", medicine.getName());
item.put("ename", medicine.getEname());
item.put("content", medicine.getContent());
item.put("id", medicine.getId());
data.add(item);
//SimpleAdapter adapter = new SimpleAdapter(this,data,R.layout.item,new String[]{"name","ename","content"}, new int[]{R.id.name,R.id.ename,R.id.content});
listview.setAdapter(adapter);
public LayoutInflater getSystemService(String layoutInflaterService) {
自定义适配器的:
public class MedicineAdapter extends BaseAdapter {
private L//绑定的数据
//绑定的界面
private LayoutI
public MedicineAdapter(ButtonClickListener buttonClickListener,List medicines,int resource ) {
this.medicines =
this.resource =
inflater = (LayoutInflater) buttonClickListener.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
public int getCount() {
return medicines.size();//得到总数
public Object getItem(int position) {
return medicines.get(position);
public long getItemId(int position) {
public View getView(int position, View convertView, ViewGroup parent) {
if(convertView==null){
convertView = inflater.inflate(resource, null);
TextView nameView = (TextView) convertView.findViewById(R.id.name);
TextView enameView = (TextView) convertView.findViewById(R.id.ename);
TextView contentView = (TextView) convertView.findViewById(R.id.content);
Medicine medicine = medicines.get(position);
//下面代码实现数据绑定
nameView.setText(medicine.getName());
enameView.setText(medicine.getEname());
contentView.setText(medicine.getContent());
return convertV
public LayoutInflater getSystemService这个该怎么写???谢谢各位大神。
其他相似问题
相关参考资料JS onMouseMove触发背景事件
JS onMouseMove触发背景事件
写一个onMouseMove事件, 使鼠标移动到一个td后,背景色改变,其中这个背景色是一张图片..
请教JS代码写法.
function move(){
高手快来~~~~~!!
如楼上所讲这样可以
function move(id){//传入要更改背景的td的id,这里的id不要其实也可以的,直接下面用mm
var pid = document.getElementById(id);pid.style.background = &url(images/b.jpg)&;
其中&td id=&mm& onmousemove=&move('mm')&&&/td&
这样就可以了
的感言:不好意思.问题已经解决.忘了采纳了..谢谢 满意答案
function move(id){//传入要更改背景的td的id
pid = document.getElementById(id);pid.style.background = &url(images/b.jpg)&;
的感言:不好意思.问题已经解决.忘了采纳了..谢谢
其他回答 (2)
你为什么不用css控制呢?这个代码做参考,我是改变背景颜色:
table tr:hover { background:#ffe5e7; cursor:}
我这里介绍一下,使用onmousemove会不停的触发事件,使用onmouseover则只触发一次,所以建议看看自己是需要哪一种,这里专门提供了一个源码和demo来实现你说的效果,我使用的是onmouseover,若你非要用onmousemove,那你可以直接替换就可了。下面是两种演示,一种是改变背景图片(move),另一种是改变文字颜色和背景色(move1)
源码如下:
function Move(td)
{td.style.backgroundImage = &url( )&; //改变背景图片
function Move1(td)
td.style.color = &#FFF&; //文字颜色
td.style.backgroundColor = &#F00&; //背景颜色
&table width=&200& border=&1&&
&td onmouseover=&Move(this)&&你好&/td&
&td onmouseover=&Move1(this)&&大家好&/td&
&td onmouseover=&Move(this)&&新年好&/td&
&td onmouseover=&Move1(this)&&大家新年好&/td&
这里专门写了一下源代码和demo,供您参考:
相关知识等待您来回答
网页制作领域专家}

我要回帖

更多关于 onmousemove事件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信