小编Ste*_*ven的帖子

类型错误:图像不是构造函数

我正在使用Plupload上传图像,并且在重构代码之前一切正常。基本上是一样的,但由于某种原因 Plupload 失败并给了我

TypeError: Image is not a constructor
Run Code Online (Sandbox Code Playgroud)

当我尝试上传图像时(此处为错误消息)。谁能看到我的代码做错了什么?Plupload 正在启动,我可以选择图像。当它尝试上传失败的图像时。

在我的页面上,我有两个区域可以上传图片。

var Image = {
    id: null,
    type: null,
    dropbox: null
};

ImageHandler = {
    settings:       {},
    image:          {},
    entityId :      null,       // ID of entity
    entity:         null,       // Entity type [store | brand | shmall | shguide]

    init: function(){
        var self = this;

        self.image.size             = { width:600,height:600,quality:80 };
        self.settings.url           = '';
        self.entityId               = lib.getEntityID(); // external function
        self.entity                 = $('.image-drop-box').data('entity-type');

        // For each image …
Run Code Online (Sandbox Code Playgroud)

jquery plupload

1
推荐指数
1
解决办法
6269
查看次数

如何从jQuery对象中选择元素?

说我有以下代码:

<div class="foo">
  <div class="t1">A</div>
  <div class="t2">B</div>
</div>

//JS

var obj = $('.foo');
Run Code Online (Sandbox Code Playgroud)

现在我想从t2元素中获取文本.如何使用我的obj对象选择此项?

这并没有工作:var txt = $(obj + '.t2').text();
这工作得很好:var txt = obj.find('.t2').text();
我也知道我可以用这var txt = $('.foo .t2').text();

但我认为使用.find()比直接选择需要更多资源.有没有办法可以直接使用my选择子元素obj

jquery

1
推荐指数
1
解决办法
37
查看次数

为什么我的 CSS3 转换在开始之前会延迟?

要么我误解了它是如何工作的,要么它根本不起作用。我有以下 CSS:

transition-property: max-width;
transition-timing-function: linear;
transition-duration: 5s;
transition-delay: 0s;
Run Code Online (Sandbox Code Playgroud)

我期望的是,当我单击按钮时,转换会在 5 秒后开始并结束。

发生的情况是,在我单击按钮后,在转换开始之前延迟了大约 3.5 秒,并且转换持续了大约 1.5 秒。总而言之,5 秒。

如果我使用transition-timing-function: ease-in;它,在转换开始之前会延迟大约 4.5 秒。

我一直在遵循这里的转换指南

我该怎么做才能让转换在我单击按钮的那一刻开始,然后持续 5 秒?

css css-transitions

1
推荐指数
1
解决办法
471
查看次数

如何在不使用Eval的情况下调用匿名函数?

我有一个自动完成功能,回调数据返回.许多不同的实例都使用此自动完成功能.

$.fn.acItem = function(callback){
  var self = this;
  $(self).autocomplete({
    (...)
    select: function(e, ui){
      // Eval for calling anonymous function (right?)
      window[callback](ui.item);
    }
  });
};
Run Code Online (Sandbox Code Playgroud)

我也在使用命名空间

var Agency = {
  init: function() {
    var self = this;
    self.registerAgency.addItem();
  },

  registerAgency: {
  (...)
    addItem: function(item){
      if(!item){
        (...)
        // Initiate autocomplete on input
        $('.search-item').acItem('Agency.registerAgency.addItem');
      } else {   
        // Do something with Item
      }
    }
}

Agency.init();
Run Code Online (Sandbox Code Playgroud)

window[callback](ui.item)如果我没有使用命名空间,请使用作品.但是对于命名空间,它会变得有点复杂,如Jason Bunting描述的那样.

由于使用了不同的命名空间acItem(),因此需要知道在回调中调用哪个函数.但许多人强烈反对使用Eval来调用匿名函数.

那么对匿名函数进行回调的好方法是什么?

javascript eval callback anonymous-function

1
推荐指数
1
解决办法
94
查看次数

无法使用jQuery.post检索数据

我正在尝试使用jQuery.post()函数来检索一些数据.但我没有输出.

我有一个显示表格的HTML.单击此表应触发jQuery.post事件.

我的脚本文件如下所示:

jQuery(document).ready(function() { 

  jQuery('#storeListTable tr').click(function() { 
    var storeID = this.cells[0].innerHTML; //This gets me the rowID for the DB call.

    jQuery.post("../functions.php", { storeID: "storeID" }, 
      function(data){ 
         alert(data.name); // To test if I get any output 
      }, "json"); 
    }); 
});  
Run Code Online (Sandbox Code Playgroud)

我的PHP文件如下所示:

<?php 
  inlcude_once('dal.php'); 

  //Get store data, and ouput it as JSON. 
  function getStoreInformation($storeID) 
  {
    $storeID = "9";//$_GET["storeID"]; 
    $sl = new storeLocator(); 
    $result = $sl->getStoreData($storeID); 

    while ($row = mysql_fetch_assoc($result)) { 
    { 
        $arr[] = $row; 
    } 
    $storeData = json_encode($arr); 
    echo …
Run Code Online (Sandbox Code Playgroud)

javascript php jquery

0
推荐指数
2
解决办法
993
查看次数

无法将click事件绑定到新创建的span项(jQuery)

我无法将事件绑定到由jQuery生成的列表.我看过一些类似的问题,但还没找到任何解决方案.

这是生成我的列表的代码:

var list = '<ul>';
for (var i = 0; i < data.length; i++) 
  {
  list += '<li id="' + data[i].id + '"><span class="btnRemoveItem" title="Remove item from list"></span>' + data[i].name + '</li>';
  }
  list += '</ul>';
  jQuery("#spanContainer").html(list);
Run Code Online (Sandbox Code Playgroud)

这创建了我想要的列表.效果很好.但我无法通过jQuery操纵列表.一些研究指出我将事件绑定到我的列表的方向.我怎么做?我看过几个有相同问题的帖子,但没有找到解决我问题的任何内容.

我正在使用jQuery 1.2.6并且不能使用v.1.3(具有.live功能).

资源: docs.jquery.com/Events/bind

编辑: 我试过这个,但它没有用.

jQuery("#7276").bind("click",function(){alert('test');})

这是html输出:

<span id="itemList">
  <ul>
    <li id="listItem_7276"><span title="Remove item from list" class="btnRemoveItem" id="7276"/>Main item</li>
    <li id="listItem_7281"><span title="Remove item from list" class="btnRemoveItem" id="7281"/>Test item 4</li>
  </ul>
</span>
Run Code Online (Sandbox Code Playgroud)

jquery binding

0
推荐指数
1
解决办法
5964
查看次数

无法将文本添加到隐藏的输入字段

我有以下HTMl:

<input id="brandID" name="brandID" type="hidden" value="" />

<select id="selectList" class="textfield70pc" name="selectList">
    <option selected="" value="221">A</option>
    <option value="4673">B</option>
</select>
Run Code Online (Sandbox Code Playgroud)

在更改选择框的值后,我需要填充此输入字段.我尝试过类似的东西,但它不起作用.

      jQuery('#selectList').change(function(){
        jQuery('#brandID').attr('value', '123123');
      });
Run Code Online (Sandbox Code Playgroud)

有人建议吗?

更新
这有效:

document.getElementById('brandID').value = '123'
Run Code Online (Sandbox Code Playgroud)

但我想使用jQuery.

html forms jquery

0
推荐指数
1
解决办法
1016
查看次数

在jQuery.post中,如何获取变量外部函数的值?

我有以下功能:

var id = "10";
var type = "Type A";
var img = "myimage.jpg";

jQuery.post("my/path/somefile.php", { instance: 'getUrl', ID : id, type: type},
function(data)
{ 
    jQuery('#logo').attr("src",data.url + img);
},"json"); 
Run Code Online (Sandbox Code Playgroud)
  1. img当我进入函数时,如何获得值?
  2. 如何img = new value从功能内部进行设置?

UPDATE

此代码不为变量赋予新值:

    logoUrl = "noLogo.png";

    jQuery.post("my/path/somefile.php", { instance: 'getUrl', ownerID : "123", type: "brand"},
    function(logo)
    {
        logoUrl = logo.url + "logo/";
    },"json");      

    alert(logoUrl); // This outputs noLogo.png"
Run Code Online (Sandbox Code Playgroud)

php jquery

0
推荐指数
1
解决办法
2292
查看次数

使用jQuery删除<li>元素后如何"更新代码"?

我有16 <li>件物品.
单击按钮后,我运行以下代码删除<li>项目.

jQuery('.btnRemoveItem').live("click",function(){
    var obj = this;
    jQuery.post("wp-content/themes/storelocator/include/adm_gallery.php", { deleteImage: 'single', name: jQuery(this).attr('id') },
    function(data){
        if(data.status == 'deleted');
        {
            jQuery(obj).closest('li').fadeOut(400, function() { $(this).remove(); });
            var count = jQuery('#adminGallery ul li').length;
            jQuery('#imageCount').html(count);
        }
    }, "json");

});
Run Code Online (Sandbox Code Playgroud)

此代码工作并删除列表项.但是,进行项目计数仍然会返回16项.因此,我需要以某种方式绑定事件.我想也许这$.live会有所帮助,但它没有效果.

我应该如何"绑定" <li>删除?

jquery

0
推荐指数
1
解决办法
1310
查看次数

如果register_globals设置为off,我如何使用会话?

由于安全原因,register_globals设置为关闭.这很糟糕,因为现在我真的可以使用会话了.

你们是如何解决这个"问题"的?

UPDATE

我尝试过使用$ _SESSION,但它没有用.这就是为什么我认为这与register_globals离开有关.

在我的头文件中,我有以下代码:

session_start();
if (!isset($_SESSION['test'])) {
  $_SESSION['test'] = "Foo bar";
Run Code Online (Sandbox Code Playgroud)

现在,在我的头文件中的任何地方,我都可以输出内容$_SESSION['test'].

但是我无法从例如page.php文件输出相同的内容.

以下是使用Wordpress的示例:example.php

//Include the header file
<?php get_header(); ?>

  Here is some text, and this is my session: <?php echo $_SESSION['test']; ?>

<?php get_footer(); ?>
Run Code Online (Sandbox Code Playgroud)

这将导致会话空.

php session

0
推荐指数
1
解决办法
3539
查看次数