小编Ben*_*son的帖子

HTML5视频播放器:动态加载视频

因此,使用符合HTML 5的视频播放器(如Video JS),如何动态加载视频,而无需重新加载整个页面?想象一下,一个链接列表(类似播放列表),每个链接指向一个视频.单击链接时,我想将选定的视频加载到播放器中.

目前,我正在使用一个持有视频播放器的Iframe,所以基本上我将一个变量传递给Iframe,然后重新加载它.由于一些原因,我不认为这是理想的; 它不允许视频全屏显示,后退按钮不仅仅移动iframe主页,而且还有iframe.我宁愿避免这种情况.

想法?谢谢!

video html5 dynamic html5-video

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

在Javascript中声明var for循环声明

我确定我已经阅读过有关此问题的讨论,但找不到它.简单地说,是否有必要在循环声明中声明for循环的增量?这有什么区别:

function foo() {
    for (var i=0; i<7; i++) {
        // code
    }
}
Run Code Online (Sandbox Code Playgroud)

...还有这个:

function foo() {
    var i;
    for (i=0; i<7; i++) {
        // code
    }
}
Run Code Online (Sandbox Code Playgroud)

既然JS有功能范围,要么都应该没问题吧?是否存在前一种方法会导致问题的边缘情况?

如果它们完全相同,那么为什么Crockford/JSLint所有人,"没有办法",关于它?

javascript variables scope for-loop

11
推荐指数
2
解决办法
9223
查看次数

jQuery:触发粘贴?

有没有办法在jQuery中触发粘贴?

或者可能是一个更广泛的问题:是否有任何跨浏览器的方式来触发使用Javascript的粘贴?

javascript jquery paste

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

使用jQuery来控制视频标签

所以,我想使用jQuery函数从链接的REL中收集URL,并将其传递给元素.

收集REL并将其发送到没有问题...但是从jQuery触发元素的加载和播放功能需要什么?

这是我到目前为止所拥有的:

$(function(){   
    $('a.componentLink').click(function() {
        event.preventDefault();
        var vidURL = $(this).attr('rel');
        $('#myVideo > source').attr('src', vidURL);
        $('#myVideo').load();
        $('#myVideo').play();
    })
});
Run Code Online (Sandbox Code Playgroud)

ATM,它没有播放......我认为jQuery本身无法访问播放功能......但必须有办法解决这个问题.

html javascript video jquery

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

在PHP中运行密集的批处理过程,并避免内存耗尽

我有几千条记录(存储在MYSQL表中的表中),我需要"批处理".所有记录都包含一个大型JSON.在某些情况下,JSON超过1MB(是的,我的数据库远远超过1GB).

我有一个功能,它抓取一条记录,解码JSON,更改一些数据,将PHP数组重新编码回JSON,并将其保存回数据库.很简单.FWIW,这是在CakePHP应用程序的上下文中.

给定一个ID数组,我试图做这样的事情(非常简单的模拟代码):

foreach ($ids as $id) {
    $this->Model->id = $id;
    $data = $this->Model->read();
    $newData = processData($data);
    $this->Model->save($newData);
}
Run Code Online (Sandbox Code Playgroud)

问题是,很快PHP就会耗尽内存.当运行这样的foreach时,几乎就像PHP从一个记录移动到下一个记录,而不释放前面操作所需的内存.

无论如何以这样的方式运行一个循环,以便在继续循环的下一次迭代之前释放内存,这样我才能真正处理大量的数据?

编辑:添加更多代码.此函数接受我的JSON,将其转换为PHP数组,进行一些操作(即根据另一个数组中的内容重新配置数据),并替换原始数组中的值.JSON有很多层深,因此极长的foreach循环.

function processData($theData) {
    $toConvert = json_decode($theData['Program']['data'], $assoc = true);
    foreach($toConvert['cycles'] as $cycle => $val) {
        foreach($toConvert['cycles'][$cycle]['days'] as $day => $val) {
            foreach($toConvert['cycles'][$cycle]['days'][$day]['sections'] as $section => $val) {
                foreach($toConvert['cycles'][$cycle]['days'][$day]['sections'] as $section => $val) {
                    foreach($toConvert['cycles'][$cycle]['days'][$day]['sections'][$section]['exercises'] as $exercise => $val) {
                        if (isset($toConvert['cycles'][$cycle]['days'][$day]['sections'][$section]['exercises'][$exercise]['selectedFolder'])) {
                            $folderName = $toConvert['cycles'][$cycle]['days'][$day]['sections'][$section]['exercises'][$exercise]['selectedFolder']['folderName'];
                            if ( isset($newFolderList['Folders'][$folderName]) ) {
                                $toConvert['cycles'][$cycle]['days'][$day]['sections'][$section]['exercises'][$exercise]['selectedFolder'] = $newFolderList['Folders'][$folderName]['id'];
                            }
                        }
                        if (isset($toConvert['cycles'][$cycle]['days'][$day]['sections'][$section]['exercises'][$exercise]['selectedFile'])) { …
Run Code Online (Sandbox Code Playgroud)

php memory json memory-management cakephp

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

使用 Wordpress REST API 通过 url 获取页面

我正在尝试在使用漂亮 URL 而不是 ID(这在 REST 场景中很典型)的站点上使用 WP REST API。我所要查询的只是请求的 URL。

假设用户登陆example.com/about,我可以执行以下操作:

/wp-json/wp/v2/pages/?slug=about
Run Code Online (Sandbox Code Playgroud)

没有汗水。但是,如果用户登陆了example.com/about/team怎么办?我可以通过 slug 进行查询team,但也许我的网站也有example.com/contact/team可能的 URL。这不可靠。

我需要的是一种实现以下目标的方法:

/wp-json/wp/v2/pages/?permalink=about%2team
Run Code Online (Sandbox Code Playgroud)

必须为每个创建的页面设置自定义路由是不可行的。我很惊讶 API 似乎没有开箱即用的某种永久链接处理程序。

api rest wordpress routes angularjs

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

在Javascript中使用变量的字符串作为JSON的属性名?

所以我通过AJAX抓取一个JSON,但需要重新配置它.部分原因是使用变量中包含的字符串作为嵌套对象的属性名称.

但Javascript不允许这样做.它将变量视为文字字符串,而不是读取值.

这是一个片段:

var pvm.exerciseList = [];

$.get('folder_get.php', function(data){
    var theList = $.parseJSON(data);
    $.each(theList, function(parentFolder, files) {
        var fileList = [];
        $.each(files, function(url, name) {
            thisGuy.push({fileURL: url, fileName: name});
        });
        pvm.exerciseList.push({parentFolder: fileList});
    });
});
Run Code Online (Sandbox Code Playgroud)

有没有办法解决?我需要提取"parentFolder"中包含的字符串.现在,JS只是从字面上解释它.

javascript string variables

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

在CakePHP中使用Auth和admin前缀时出现奇怪的重定向问题

admin对于一些管理员视图,我在Cakephp应用程序中使用前缀.我也使用Auth根据roleUser表中的字段限制对这些视图的访问.很标准.

问题是,当未经授权的用户试图去,比如说admin/users(在这种情况下禁止索引操作)时,它们被重定向到/admin/users/login当然不存在的状态.

对于没有admin前缀的操作,不会发生这种情况.那些表现得很好.

为什么用户被发送到管理前缀和禁止操作前面的登录?

authentication redirect cakephp

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

Knockout手风琴绑定打破了

以下绑定在1.9之前有效:

ko.bindingHandlers.accordion = {
    init: function(element, valueAccessor) {
        var options = valueAccessor() || {};
        setTimeout(function() {
            $(element).accordion(options);
        }, 0);
        ko.utils.domNodeDisposal.addDisposeCallback(element, function(){
            $(element).accordion("destroy");
        });
    },
    update: function(element, valueAccessor) {
        var options = valueAccessor() || {};
        $(element).accordion("destroy").accordion(options);
    }
}
Run Code Online (Sandbox Code Playgroud)

但自1.9以来,它不再有效,并给出以下错误:

Uncaught Error: cannot call methods on accordion prior to initialization; attempted to call method 'destroy'
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚原因.我查看了jQuery UI升级说明,但似乎没什么关系.

造成这种情况的原因是什么,我的绑定需要改变什么?

javascript binding jquery-ui knockout.js

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

MAMP 中的 Imagick 问题

所以我遵循了此页面上的所有说明:

http://toomtech.com/post/8832473042/mamp-imagemagick-lion

Imagick 已安装,我可以验证 imagick.so 是否位于 MAMP 中的相应文件夹中。

但是,phpinfo 中没有显示任何与 Image Magick 或 Imagick 相关的内容...当我调用时,new Imagick()出现错误:找不到类“Imagick”

我可能会错过什么?我在 Lion 上运行 MAMP。

mamp imagemagick imagick osx-lion

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

调用函数或将目标定位在Titanium Alloy中的另一个控制器中

所以,我正在创建一个自定义模式窗口:

var modal = Alloy.createController('modal');
modal.getView().open();
Run Code Online (Sandbox Code Playgroud)

Modal控制器内部是一个被调用的函数changeTitle,在视图中是一个带有id的标签modalTitle.我想弄清楚的是如何从启动 Modal窗口的控制器中调用任何一个.

我以为以下会调用控制器中的函数,但没有骰子:

modal.changeTitle('foo');
Run Code Online (Sandbox Code Playgroud)

同样地,我认为以下将在新创建的视图中定位标签,但同样,没有骰子.

var modalWin = modal.getView();
modalWin.$.modalTitle = 'foo';
Run Code Online (Sandbox Code Playgroud)

titanium titanium-alloy

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

jQuery:为什么整数被添加到像字符串这样的变量?

所以我试图获取在for语句中递增的变量,并向其添加一个整数...但由于某种原因,它正在添加整数,就像它是一个字符串一样; 减法或乘法等其他操作按预期工作.

为什么会这样?编辑:我添加了整个功能; 问题是我尝试将2添加到变量x的位置.

令我困惑的是,我能够在.eq()对象中使用x没问题,例如......

$(function() {
    $('textarea').bind('paste', function (e){
        inputGroup = $(this).parent();
        var ob = $(this);
        if (e.type == 'paste'){
            setTimeout(function(){
                var data = ob.val();
                var tabbed = data.replace(/\n/g, "\t");
                var cells = tabbed.split("\t");
                for(var x in cells) {
                    foo = x + 2;
                    alert(foo);
                    $(inputGroup).find('input').eq(x).val(cells[x]);
                }
            }, 1);
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

javascript string variables jquery integer

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