让两个独立的JavaScripts作为一个
Have two separate JavaScripts act as one?
在我的HTML中,我有几张这样的图片:
<img class="gallery_left" id="left4" src="assets/community/fall_regionals/img01.png" />
这个图像有一个类和一个ID。我还有gallery_left和ID left4:类的JavaScript
$(function() {
$('img.gallery_left').mouseover(function(){
$(this).animate({
borderWidth: '10px',
width: '750px',
height: '500px',
marginLeft: '1px',
zIndex: '15'}, 'default');
});
$('img.gallery_left').mouseout(function(){
$(this).animate({
borderWidth: '4px',
width: '300px',
height: '200px',
marginLeft: '1px',
zIndex: '0'}, 'default');
});
$('#left4').mouseover(function(){
$(this).animate({
marginTop: '105px'}, 'default');
});
$('#left4').mouseout(function(){
$(this).animate({
marginTop: '261px'}, 'default');
});
});
我发现gallery_left类的JavaScript首先执行,然后是ID left4。在某些情况下,它们将同时执行(或至少看起来是),但在鼠标悬停时,图像将在一个操作(类)中收缩90%的时间,然后在另一个操作中下移(ID)。我发现这对我的许多图像来说都是一个大问题。有没有办法我可以稍微清理一下,让它更没有问题?此外,建议只为每个单独的图像创建一个特定的类来"组合"两个单独的动作是不可能的,因为这将是太多的类。感谢您的帮助!谢谢
试试这个:实时演示
$(function() {
var margin_top;
$('img').mouseover(function(){
if($(this).hasClass('gallery_left')) {
if($(this).attr('id') == "left4") {
margin_top = '105px';
} else {
$(this).css('marginTop');
}
$(this).animate({
borderWidth: '10px',
width: '750px',
height: '500px',
marginLeft: '1px',
zIndex: '15',
marginTop: margin_top,
},
'default');
} else if($(this).hasClass('gallery_right')) {
if($(this).attr('id') == "right6") {
margin_top = '105px';
} else {
$(this).css('marginTop');
}
$(this).animate({
borderWidth: '10px',
width: '750px',
height: '500px',
marginLeft: '199px',
zIndex: '15',
marginTop: margin_top,
},
'default');
}
});
$('img').mouseout(function(){
if($(this).hasClass('gallery_left')) {
if($(this).attr('id') == "left4") {
margin_top = '261px';
} else {
$(this).css('marginTop');
}
$(this).animate({
borderWidth: '4px',
width: '300px',
height: '200px',
marginLeft: '1px',
zIndex: '0',
marginTop: margin_top,
},
'default');
} else if($(this).hasClass('gallery_right')) {
if($(this).attr('id') == "right6") {
margin_top = '261px';
} else {
$(this).css('marginTop');
}
$(this).animate({
borderWidth: '4px',
width: '300px',
height: '200px',
marginLeft: '661px',
zIndex: '0',
marginTop: margin_top,
},
'default');
}
});
});
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- jQuery:循环一个具有不同超时值的循环
- 当包含另一个asp文件时,是否也包含所有引用的样式和脚本页面
- 从javascript创建一个列表
- 节点导出返回一个空对象
- 使用clickToggle并在单击另一个元素时关闭元素
- 我可以在json对象中添加一个函数吗
- 使用javascript将动态表从一个html页面打印到另一个html页
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 表追加而不附加最后一个元素
- 我如何找到一个句子中的所有空格并替换忽略它们
- D3在一个调用中绘制不同的SVG形状,没有可见性
- 如何在android中使用phonegap将文件从一个文件夹移动/复制到另一个文件夹
- 使用类从一个标记中双击事件
- Javascript,访问一个主要对象模块模式中的每个对象
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 有没有一个插件可以从特定的页面/帖子中排除一些JavaScripts
- 我可以用JavaScripts创建一个jar文件吗
- 如何将内联JavaScripts合并为一个
- 让两个独立的JavaScripts作为一个