小编Ale*_*pin的帖子

修改CKEditor链接对话框以向链接添加自定义属性

我在网站上使用CKEditor,我需要能够在通过编辑器创建的一些链接上放置特殊的数据属性.用户通过选中链接对话框中的复选框,指示他们需要放置在链接上的特殊属性.我已设法使用以下代码向链接对话框添加一个复选框:

CKEDITOR.on('dialogDefinition', function(ev) {
    if (ev.data.name == "link") {
        var info = dialog.getContents("info");
        info.elements.push({
            type: "vbox",
            id: "urlOptions",
            children: [{
                type: "hbox",
                children: [{
                    id: "button",
                    type: "checkbox",
                    label: "Button",
                    commit: function(data) {
                        data.button = this.getValue()
                        console.log("commit", data.button, data);
                    },
                    setup: function(data) {
                        this.setValue(data.button);
                        console.log("setup", data.button, data);
                    }
                }]
            }]
        });
    }
});
Run Code Online (Sandbox Code Playgroud)

现在我有两个问题.第一个是尽管我添加了应该保存复选框状态的函数commitsetup函数,但是它不起作用.就好像它data不能保存任何其他参数,但默认情况下那些参数.

第二个问题是我不知道如何在我的链接上添加/删除数据属性.在我看来,我应该onOk在对话框的回调中这样做,但是,链接对话框已经有onOk回调,所以我不确定我应该如何进行.当然,我不想直接修改任何CKEditor的文件.

我怎样才能完成这些事情?

javascript ckeditor

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

MongoDB从shell中删除GridFS对象

我使用GridFS存储在MongoDB中的文件.我需要从JavaScript shell中删除ID中的一些文件.我需要使用它的ID删除单个文件.我想我可以这样做:

db.fs.files.remove({_id: my_id});
Run Code Online (Sandbox Code Playgroud)

这在某种程度上起作用; 它从fs.files集合中删除文件,但不从集合中删除块本身fs.chunks.我知道的原因是因为我在RockMongo之前和之后检查了两个集合的长度.

我可以浏览一下块并删除那些引用该文件的内容,但有没有更好的内置方法呢?

javascript shell mongodb gridfs

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

IE11性能分析器没有给出任何结果

我正在尝试提高我的网站在IE11中的性能,我似乎无法从性能分析器中获得任何结果.我已经阅读了这个页面,它看起来非常简单,但我必须遗漏一些东西.以下是我采取的步骤:

  1. 在F12工具性能选项卡上,单击绿色播放按钮或"开始分析以开始性能会话(Ctrl + E)"链接.
  2. 我在我的应用程序中执行操作(只需点击字段然后退出)
  3. 我点击红色停止按钮或停止分析以生成报告(Ctrl + E)链接
  4. "Profiler"选项卡显示"使用空白进度条分析收集的数据:".进度条永远不会出现在任何地方,几秒钟后,Profiler选项卡只会恢复为"开始分析以开始性能会话(Ctrl + E)".

这发生在我尝试的任何网站上,而不仅仅是我的网站.其余的F12标签(DOM,控制台,网络)都可以正常工作.使用IE版本11.125.16299.0,11.0.49在Windows上更新版本10.0.16299.

我究竟做错了什么?

performance profiler internet-explorer-11 ie11-developer-tools

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

在JavaScript中获取请求属性

加载页面时,我的控制器中有以下内容:

request.setAttribute("myAtt", "Testing");
Run Code Online (Sandbox Code Playgroud)

我想在我的JSP文件中访问它.在HTML部分,我熟悉使用以下内容:

${myAtt} ${requestScope.myAtt}
Run Code Online (Sandbox Code Playgroud)

等等.但是,我从未确定如何在JavaScript中访问请求参数.我尝试过很多东西,例如:

var jsAtt = ${myAtt};
var jsAtt = '${myAtt}';
var jsAtt = eval(${myAtt});
var jsAtt = eval('${myAtt}');
Run Code Online (Sandbox Code Playgroud)

等等,但似乎没有任何作用.

有没有办法通过JavaScript获取请求属性?请不要jQuery,servlets等.我想要纯JavaScript代码.

我有点惊讶我没有发现这已经问过了.很抱歉,如果它是重复的,我只是没有看到orignal.

javascript jsp

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

PHP GD调整透明图像的大小,给出黑色边框

我试图用PHP缩小PHP中的一些透明图像,每当我这样做时,周围都会添加一个奇怪的黑色边框.

之前 之前

在此输入图像描述

<?php
    $image = imagecreatefromstring(file_get_contents('logo.png'));
    $width = imagesx($image);
    $height = imagesy($image);

    $newWidth = $width - 1;
    $newHeight = $height - 1;
    $output = imagecreatetruecolor($newWidth, $newHeight);
    imagecolortransparent($output, imagecolorallocatealpha($output, 0, 0, 0, 127));
    imagealphablending($output, false);
    imagesavealpha($output, true);
    imagecopyresampled($output, $image, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);

    header('Content-Type: image/png');
    imagepng($output);
?>
Run Code Online (Sandbox Code Playgroud)

似乎如果我将新维度的代码更改为旧维度(删除- 1),则不会出现黑色边框.因此调整大小会导致问题.

有谁知道什么可能是错的?

编辑:我刚刚意识到它只发生在imagecopyresampled和不发生imagecopyresized.但是,imagecopyresampled提供了更好的视觉效果,如果可能的话我想让它工作.

php gd image-resizing

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

发送Google Analytics事件,然后立即导航

我可以发送Google Analytics事件并立即离开,就像这样吗?

_gaq.push(['_trackEvent', 'foobar']);
window.location = "/";
Run Code Online (Sandbox Code Playgroud)

如果谷歌分析在调用它时会执行某种AJAX请求,那么无论我们是否留在页面上它都应该有效.我担心的是,它似乎有时只是将数据放入数组中以供以后处理.我认为这只是最初发生的,当谷歌分析还没有时间进行初始化时,但我想确定这一点.

我用GA调试进行了测试,它看起来有效,但我不确定这是否意味着它总是取决于加载速度而不是.

我可以这样做,永远不会丢失任何事件吗?

javascript google-analytics

10
推荐指数
2
解决办法
2231
查看次数

每个请求使用不同的cookie域进行快速会话?

我有一种情况,可以从多个不同的域访问应用程序.例如,foo.combar.com在理论上都可以指向我的应用程序.此外,他们的子域名也可以指向我的应用程序,例如red.foo.comblue.foo.com.我正在使用Express cookie会话,我的会话初始化代码如下所示:

app.use(express.session({
    secret: "secret",
    cookie: {
        domain: ".foo.com"
    },
    store: new MongoStore({
        db: db
    })
}));
Run Code Online (Sandbox Code Playgroud)

这适用于用户通过foo.com或其任何子域时,但bar.com无法正常工作.我需要同时兼得.理想情况下,我会根据请求将其设置为不同的域,但我不确定如何做到这一点.我的请求是高度异步的,如果我只是在每个请求中为整个应用程序设置它,我担心当两个调用同时进入时它可能不起作用.

这是可能吗?有没有人有任何想法来解决这个问题?

javascript session session-cookies node.js express

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

改进了John Resig的JavaScript类框架

美好的一天,

我最近一直在寻找一个简单的JavaScript类框架,它只进行基本的继承.我在他的博客上找到了John Resig的示例框架,我发现它对我的需求非常满意.但是,该帖子的日期是2008年,毕竟这是我们正在讨论的网络.

所以我的问题是,你们会按原样使用那个系统,还是会有改进,多年来发现的东西?或者也许是现有的,积极支持的类框架,类似于这个?

谢谢.

javascript javascript-framework

9
推荐指数
2
解决办法
5149
查看次数

沙箱的PayPal API凭据

我正在尝试用PHP中的PayPal实现定期付款.我找到了这个例子,我正在研究,但我需要一些API凭据.我创建了一个PayPal沙盒帐户,并从那里创建了一个商家帐户.我正在尝试获取该沙箱商家帐户的API凭据以替换示例中的值,但我找不到位置.我找到的所有指南都指向沙箱用户界面的不存在的部分.有谁知道我在哪里可以找到沙盒商家帐户的API凭据详细信息?

谢谢.

paypal paypal-sandbox

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

Node.js可以调用Chrome吗?

在桌面上运行的Node.js是否可以生成Chrome浏览器窗口?我想在Node.js收到活动时启动Chrome浏览器,提供窗口大小和位置.

sys shell命令只是方法吗?

google-chrome node.js

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