小编Ror*_*san的帖子

函数不在onclick事件中调用

我想在每个youtube链接的末尾添加一些HTML,以便在litebox中打开播放器.到目前为止这是我的代码:

$(document).ready(function() {
  var valid_url = new RegExp('youtube\.com\/.*v=([a-zA-Z0-9_-]+)');
  var image_data = 'base64 encoded image';

  init();

  function init() {
    $('a').each(function() {
      if (valid_url.test($(this).attr('href'))) {
        $(this).after( ' <img src="' + image_data + '" onclick="open_litebox(\'hi\');" />' );
      }
    });
  }

  function open_litebox(param) {
    alert(param);
  }
});
Run Code Online (Sandbox Code Playgroud)

它可以在youtube链接之后注入一些HTML,就像这样:

<img src="base 64 data" onclick="open_litebox('hi')">
Run Code Online (Sandbox Code Playgroud)

但是当我点击这个时,open_litebox()函数不会被调用.查看错误控制台我可以看到一个错误open_litebox is not defined,但我已经定义了它.

我对这里出了什么问题一无所知,有人可以帮我一把吗?

谢谢.

javascript jquery scope function onclick

29
推荐指数
3
解决办法
6万
查看次数

根据所选OPTION的宽度自动调整SELECT元素的大小

我有这个select元素与option它不同.通常select元素会从最大option元素获得宽度,但我希望select元素的默认option值宽度更短.当用户选择另一个元素时option,该select元素应调整自身大小,以便整个文本始终在元素中可见.

$(document).ready(function() {
    $('select').change(function(){
        $(this).width($('select option:selected').width());
    });
});
Run Code Online (Sandbox Code Playgroud)

问题:

  • 在Chrome(Canary)上,它的返回宽度始终为0.
  • 在Firefox上,选择较短的选项时,会添加宽度并且不会调整大小.
  • Safari:与Chrome相同的结果.

演示@ JSFiddle

jquery select resize dom-manipulation autoresize

28
推荐指数
5
解决办法
7万
查看次数

javascript/jquery - 选择两个数字中较大的一个

我正在尝试使用javascript来选择两个数字中较大的一个.我知道我可以写一个if语句,但我想知道是否有某种数学运算或某些东西可以提高效率.这是我用if语句做的方法:

if (a > b) {
    c = a;
}  
else {
    c = b;
}
Run Code Online (Sandbox Code Playgroud)

javascript math comparison jquery comparison-operators

27
推荐指数
2
解决办法
2万
查看次数

从子类c#调用父方法

这是一个与我之前看到的答案略有不同的问题,或者我没有得到它.我有一个父类,有一个名为的方法MyMethod()和一个变量public Int32 CurrentRow;

public void MyMethod()
{    
     this.UpdateProgressBar();    
}
Run Code Online (Sandbox Code Playgroud)

在父级中我创建了一个新的实例 ChildClass

Boolean loadData = true;
if (loadData) 
{    
     ChildClass childClass = new ChildClass();    
     childClass.LoadData(this.Datatable);    
}
Run Code Online (Sandbox Code Playgroud)

在子类LoadData()方法中,我希望能够设置CurrentRow父类的变量并调用该MyMethod()函数.

我该怎么做呢?

.net c#

27
推荐指数
3
解决办法
10万
查看次数

使用jQuery在拖动时滚动页面

我已经尝试过使用kinetic.js和下面的代码,但是当我在IE11中尝试这个时,它每次滚动都会一直跳到顶部:

$("html").kinetic();
Run Code Online (Sandbox Code Playgroud)

我想让平板电脑和IE10和11上的页面可滚动,这样用户就可以像往常一样向上滚动页面向下滚动.

如果没有它跳到顶端,我怎么能在纯JS或jQuery中做到这一点?

html javascript css jquery kineticjs

27
推荐指数
3
解决办法
5万
查看次数

JQuery UI min脚本错误

使用jquery-ui-1.8.19.custom.min.js时,有没有人从Eclipse IDE(Indigo版本)中获得错误?似乎脚本工作正常,我没有从浏览器中得到任何错误.

我创建了一个自定义的JQuery UI主题并从JQuery站点下载它,但是当我将脚本放入Eclipse中的Maven项目时,我遇到了3个主要错误.

无法从函数或方法外部返回
令牌上的语法错误"无效的正则表达式选项",没有准确的可用更正
语法错误,插入")"以完成参数

和几十个missing semicolon警告......

javascript eclipse jquery jquery-ui

25
推荐指数
2
解决办法
2万
查看次数

将div对齐到列表项旁边

我正在尝试div动态创建元素和打印项目.我已经创建了一个演示来展示我到达的地方.

我的代码的问题是它不会出现在我想要的列表旁边.相反,它显示在底部.是否有可能在div我悬停的元素旁边显示新的权利?

$(".bubble").live({
    mouseenter : function() {
        $("#bubble").show();
        $("#bubble").html($(this).attr('id'));
    },
    mouseleave : function() {
        $("#bubble").empty();
    }
});
Run Code Online (Sandbox Code Playgroud)
#bubble{
    width:100px;
    height:20px;
    background-color:#666666;
    position:absolute;
    display:hidden;
}
Run Code Online (Sandbox Code Playgroud)
<ul>
    <li><span class="bubble" id="test1">test1</span></li>
    <li><span class="bubble" id="test2">test2</span></li>
    <li><span class="bubble" id="test3">test3</span></li>
    <li><span class="bubble" id="test4">test4</span></li>
    <li><span class="bubble" id="test5">test5</span></li>
</ul>
<div id="bubble"></div>
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

25
推荐指数
3
解决办法
1327
查看次数

使jQuery内的<a>自动完成可点击

我设法使用以下代码添加jQuery自动完成项右侧的链接:

function onClientSelect(event, ui) {
    // My handling code goes here
    event.preventDefault();
}

$("#mypage input[name='client']").autocomplete({
    minLength: 1,
    appendTo: $(this).parent(),
    source: '/filter_client/',
    select: onClientSelect,
    focus: function (event, ui) {
        event.preventDefault();
    },
}).data("ui-autocomplete")._renderItem = function (ul, item) {
    return $("<li></li>")
        .data("item.autocomplete", item)
        .append("<a>" + item.label + "</a>")
        .appendTo(ul);
};
Run Code Online (Sandbox Code Playgroud)

我的服务器以这种格式返回元素标签:

<div class="ac-item-lb">My Item Label</div>
<a class="ac-item-a" href="/url_to_go_to/" target="_blank">View Detail</a>
Run Code Online (Sandbox Code Playgroud)

我想要做的是当我点击"查看详细信息"时打开新选项卡中的链接,单击任何其他区域就像正常一样执行onClientSelect.但是,当前左键单击链接也会执行onClientSelect.打开链接的唯一方法是单击中间滚轮或鼠标右键,然后选择"在新选项卡中打开".

我尝试使用event.stopImmediatePropagation()在链接上附加一个click事件处理程序,但这似乎不起作用.有谁知道如何解决这个问题?

javascript jquery autocomplete click

25
推荐指数
2
解决办法
4140
查看次数

点击打开文件上传对话框

我必须通过单击其他按钮来打开文件上载对话框,即我隐藏文件上传控件(可见性:隐藏),点击其他按钮我要打开该对话框.以下是我的代码:

<input type="file" style="visibility: hidden;" />
Run Code Online (Sandbox Code Playgroud)

以下是javascript:

$('#button').click(function() {
    $('input[type=file]').click();
});
Run Code Online (Sandbox Code Playgroud)

它在Firefox 4和IE8中运行良好,但在chrome12中它无法正常工作,即对话框未被打开.知道为什么吗?

html javascript jquery file-upload

23
推荐指数
3
解决办法
5万
查看次数

如何从带有2个按钮的表单上单击按钮发送Ajax请求?

大家好,抱歉这里有点通用的问题.我是Ajax的新手,想要从一个页面向另一个页面发送请求,该表单有2个按钮.

<form method="post">
  <button id="button_1" value="val_1" name="but1">button 1</button>
  <button id="button_2" value="val_2" name="but2">button 2</button>
  <input id="access_token" type="hidden" name="access_token" value="<?php echo $_SESSION['access_token']; ?>" />
</form>
Run Code Online (Sandbox Code Playgroud)
$(document).ready(function() {
  $("#button_1").click(function(e) {
    e.preventDefault();
    $.ajax({
      type: "POST",
      url: "/pages/test/",
      data: {
        id: $("#button_1").val(),
        access_token: $("#access_token").val()
      },
      success: function(result) {
        alert('ok');
      },
      error: function(result) {
        alert('error');
      }
    });
  });

  $("#button_2").click(function(e) {
    e.preventDefault();
    $.ajax({
      type: "POST",
      url: "/pages/test/",
      data: {
        id: $("#button_2").val(),
        access_token: $("#access_token").val()
      },
      success: function(result) {
        alert('ok');
      },
      error: function(result) {
        alert('error');
      }
    });
  });
}); …
Run Code Online (Sandbox Code Playgroud)

javascript php ajax jquery

22
推荐指数
3
解决办法
12万
查看次数