Jquery .live语法有问题
我需要有一个mousedown/up事件效果,一个通过.load购买到页面中的元素 我正在使用这个,但我想我可能弄错了:Jquery .live语法有问题,jquery,load,live,mousedown,mouseup,Jquery,Load,Live,Mousedown,Mouseup,我需要有一个mousedown/up事件效果,一个通过.load购买到页面中的元素 我正在使用这个,但我想我可能弄错了: $("#newBtn").live('mouseup', function(){ $(this).css('box-shadow', '0px 7px 10px -5px #000'); }).mousedown(function(){ $(this).css('box-shadow', '0px 7px 10px -5px #666'); }); 以下是加载事件:
$("#newBtn").live('mouseup', function(){
$(this).css('box-shadow', '0px 7px 10px -5px #000');
}).mousedown(function(){
$(this).css('box-shadow', '0px 7px 10px -5px #666');
});
以下是加载事件:
$('#dashboard').click(function()
{
$('#box').html('');
$('#box').load('ajax/content.php #dashboard');
});
$('#calendar').click(function()
{
$('#box').html('');
$('#box').load('ajax/content.php #calendar');
});
这是两个按钮,其中一个加载包含#newBtn的div
任何帮助都将不胜感激
我也试过:
$("#dashboard").on('load', function(){
$('#newBtn').mouseup(function()
{
$(this).css('box-shadow', '0px 7px 10px -5px #000');
}).mousedown(function(){
$(this).css('box-shadow', '0px 7px 10px -5px #666');
});
});
我的想法是,在将新div加载到我的页面时,鼠标按下事件将被触发。但是没有这样的运气:(好的
我非常感谢您的帮助,但是on方法对我不起作用。我最终得到了这样的结果(使用工程师的语法和live方法):
唯一的问题是,我不知道它为什么有效,所以如果有人能向我解释:)那太好了 试试我最新的答案。我已经将“仪表板”改为“盒子”,似乎,
\box
不是我之前思考过的\dashboard
的孩子。不要使用live
,它已被弃用。有关代码工作原理的更多解释,请参阅docs->,特别是.live(事件、数据、处理程序(eventObject))
部分。根据文档,您可以将代码简化为$('#newBtn').live('mouseup',function(){/…}).live('mousedown',function(){/…})代码>,因为您正在将“#newBtn”数据传递给处理程序,而该数据未在处理程序中使用。
$('#newBtn').live('mouseup','#newBtn',function() {
$(this).css('box-shadow', '0px 7px 10px -5px #000');
}).live('mousedown','#newBtn',function() {
$(this).css('box-shadow', '0px 7px 10px -5px #666');
});