标签: widget

正在寻找最终的Resizing Textarea

我想为用户提供resizing textarea控件.我已经给了这个去看看其他一些实现,但我似乎找不到满足我所有要求的实现.具体来说,我想要一个控件:

  • 当页面以标准兼容模式(即不在怪异模式下)呈现时,可在Windows上的IE6,IE7,IE8以及Windows和OS X上的Firefox 3和3.5中使用.
  • 不会搞乱undo buffer/undo stack.IE是一个特别令人讨厌的问题 - 添加节点,删除节点和其他一些DOM操作将重置输入缓冲区,这意味着如果实现依赖于这些技术,则撤销将不会像在标准textarea控件中那样运行.除了这个说明,我还没有找到关于这个bug的更多信息.像jQuery Auto Growing Plugin这样的实现遇到了这个问题 - 尝试撤消IE中的更改并比较它如何工作到标准textarea.我添加了一个向JSBin演示此问题的示例页面.
  • 具有最大高度,超过该高度,控件无法生长.
  • 删除内容时适当缩小.
  • 在按键上不闪烁或行为异常.例如,当控件超出初始大小时,jQuery Auto Growing Textarea控件的行为奇怪,至少是IE7.
  • 不要求控件使用固定宽度/等宽字体.

我看到的最接近这种功能的是Facebook的状态更新字段,它是作为内容可编辑的div元素实现的,但我对使用这样的元素有一些保留,因为使用div意味着:

  • 需要明确地设置边框样式,这意味着我们最终可能会得到一个看起来与原生textarea不同的边框.
  • 需要与真正的textarea同步内容(可能在两个方向?).
  • 在相对于textarea的位置放置提示和其他元素时添加复杂性.
  • 虽然这种方法适用于Facebook状态更新,但它在包含数百个标准输入元素的表单中的效果如何?

我上面列出的内容代表了"最终调整文本区域" - 解决了我认为现有方法存在的问题.这样的控制存在吗?是否可以编写这样的控件?

javascript widget

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

意图在android上启动时钟应用程序

我正面临着我制作的时钟小部件的问题.我希望用户触摸时钟并在手机上启动时钟应用程序.这是代码:

//this worked on my nexus 2.1 
if(VERSION.SDK.equals("7")){
            RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget);

            Intent AlarmClockIntent = new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_LAUNCHER).setComponent(new ComponentName("com.android.deskclock", "com.android.deskclock.DeskClock"));
            PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, AlarmClockIntent, 0);
            views.setOnClickPendingIntent(R.id.Widget, pendingIntent);

            AppWidgetManager.getInstance(context).updateAppWidget(intent.getIntArrayExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS), views);

        }
  //this worked on my nexus +froyo2.2           
  else if(VERSION.SDK.equals("8")){
            RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget);

            Intent AlarmClockIntent = new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_LAUNCHER).setComponent(new ComponentName("com.google.android.deskclock", "com.android.deskclock.DeskClock"));
            PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, AlarmClockIntent, 0);
            views.setOnClickPendingIntent(R.id.Widget, pendingIntent);

            AppWidgetManager.getInstance(context).updateAppWidget(intent.getIntArrayExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS), views);

        }
 //this worked on my htc magic with 1.5 and 1.6
        else{
            RemoteViews views = …
Run Code Online (Sandbox Code Playgroud)

android widget clock android-intent

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

如何保护小部件免受伪造请求

假设您有一个JavaScript小部件,当且仅当用户想要点击它时,才需要向您的Web应用程序发出请求.您不希望此请求容易受到CSRF的攻击,因此您可以向页面编写iframe.根据原始继承规则,父站点将无法读取CSRF令牌.然而,点击劫持(或劫持)呢?由于CSRF,你必须在iframe中,而x-frame-options无法帮助,对于帧破坏者也是如此.

在加载小部件后,攻击者将在iframe中应用SVG掩码.此掩码将使iframe不可见.此时,攻击者可以将iframe的大小调整为页面大小,也可以使iframe跟随游标不可见.无论何时用户点击页面上的任何位置,iframe都会收到点击事件及其游戏结束.

所以有一个二元性,似乎你陷入了CSRF和Clickjacking之间.什么是这个问题的最佳解决方案(如果有的话)?

javascript browser security widget clickjacking

16
推荐指数
2
解决办法
1421
查看次数

如何在Android主屏幕上制作4x1尺寸的小部件?

我在为Android开发4x1小部件时遇到了困难.

这是appprovider

<?xml version="1.0" encoding="utf-8"?> <appwidget-provider
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:minWidth="294dp"
    android:minHeight="72dp"
    android:initialLayout="@layout/main" />
Run Code Online (Sandbox Code Playgroud)

这是main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="320dp"
    android:layout_height="100dp"
    android:gravity="center_vertical|center_horizontal"
    android:orientation="horizontal"> 
//content goes here
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我可以看到小部件,但大小是4x2.我混淆了为什么我不能拥有4x1小部件大小?

谢谢

android widget homescreen

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

@user和#hashtag的Twitter搜索查询

我想嵌入twitter小部件,其中包含带有hashtag和用户帐户的搜索结果.'#hashtag或@username'不起作用

twitter search social-media widget hashtag

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

未捕获的ReferenceError:未定义django

我正在尝试在我的处方集上使用带有几个DateField的Admin Widgets,但只有第一个才能正确显示小部件,而另一个我得到一个错误:

DateTimeShortcuts.js:205未捕获的ReferenceError:未定义django

(所示的线是:

django.jQuery(document).bind('keyup', function(event) { 
Run Code Online (Sandbox Code Playgroud)

)

这是我的模板头:

<head>
{% load adminmedia  %}
<link rel="stylesheet" href="/static/css/main.css" />
<script type="text/javascript" src="/admin/jsi18n/"></script>
<script type="text/javascript" src="/static/admin/js/core.js"></script>
<script type="text/javascript">
    window.__admin_media_prefix__ = "{% filter escapejs %}{% admin_media_prefix %}{% endfilter %}";
</script>
<link rel="stylesheet" type="text/css" href="/static/admin/css/forms.css"/>
<link rel="stylesheet" type="text/css" href="/static/admin/css/base.css"/>
<!-- <link rel="stylesheet" type="text/css" href="/static/admin/css/global.css"/> -->
<link rel="stylesheet" type="text/css" href="/static/admin/css/widgets.css"/>
{{ form.media }}...
Run Code Online (Sandbox Code Playgroud)

我的模型字段:

start_date = models.DateField()
end_date = models.DateField()
Run Code Online (Sandbox Code Playgroud)

我的表格类:

class UserForm(ModelForm):
    start_date = forms.DateField(
        widget=widgets.AdminDateWidget
        )
    end_date = forms.DateField(
        widget=widgets.AdminDateWidget
        )
    class Meta: …
Run Code Online (Sandbox Code Playgroud)

javascript python forms django widget

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

Shadow DOM可以保护我的元素吗?

目标:一个封闭的小部件

假设我是FakeBook™的朋友小部件的开发者.我为网站所有者提供了一个小部件,可以将这样的个性化消息添加到他们的页面:

你的朋友Michael,Anna和Shirley喜欢这个网页!

第一种方法:创建的脚本 span

天真地,我创建了一个脚本,将这些信息span放在网站上.但是,ExampleSite的所有者现在可以通过简单的DOM操作访问您朋友的名字!
这是一个很大的隐私/安全问题.

第二种方法: iframe

我不希望ExampleSite访问他们朋友的名字.所以相反,我让网站所有者添加小部件iframe:

<iframe src="http://fakebook.com/friends?page=http%3A%2F%2Fexample.org%2F"></iframe>
Run Code Online (Sandbox Code Playgroud)

这样做,因为ExampleSite的所有者无法刮掉内容iframe.然而,整个iframe事情相当丑陋,因为它没有融入网站的样式,而一个span.

期望的方法:Shadow DOM

在昨天阅读Shadow Dom时,我想知道这是否可以解决这两个问题.这将允许我有一个脚本,创建一个span原始网站无法访问:

var host = document.querySelector('#friends');
var root = host.webkitCreateShadowRoot();
root.textContent = 'Your friends Michael, Anna and Shirley love this webpage!';
Run Code Online (Sandbox Code Playgroud)


但是,Shadow DOM是否会将其内容隐藏在周围的页面中?
这里的假设是除了我的脚本之外没有人可以访问root,但这是正确的吗?

影子DOM规范毕竟说,它提供的功能封装,但其实我是想相信封装.虽然组件模型用例实际列出了这个用例,但我不确定Shadow DOM是否实现了nesessary confinement属性.

security dom widget web-component shadow-dom

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

如何在iOS8上以编程方式创建Today小部件而不使用storyboard?

我试图删除故事板文件和相关Info.plist条目,但这次延期停止了工作; 它甚至没有从XCode启动.

The operation couldn’t be completed. (LaunchServicesError error 0.)

常规应用程序(包含应用程序)很容易,因为我们看到它的入口点和应用程序委托,但是如何在扩展程序上执行此操作?

widget ios ios8 ios-app-extension

16
推荐指数
3
解决办法
7364
查看次数

Django小部件模板覆盖不会在项目模板目录中搜索.怎么修?

我试图在Django 1.11中覆盖内置的小部件模板.我似乎正在做文档在这方面要做的所有事情,但对于小部件模板,Django根本没有查看我的项目,并且我收到TemplateDoesNotExist错误.

这是我对覆盖的所有内容:

class MyFileWidget(widgets.FileInput):
    template_name = 'myapp/my_file_widget.html'
Run Code Online (Sandbox Code Playgroud)

模板绝对存在.如果我将模板传递给渲染调用,它会发现它很好.问题是路径问题.从视图调用render时,它会检查以下内容:

projectroot/templates/myapp/my_file_widget.html djangoroot/forms/templates/myapp/my_file_widget.html

当它在我的项目中找到模板时,它会渲染它.当我在上面的类中提供模板路径时,不会发生这种情况.在这种情况下,它不检查我的项目模板,文件实际存在的位置,并开始检查django路径,而不是.因此错误消息.

所以我不知道为什么加载器会在渲染调用上检查我的项目模板,但是在查找窗口小部件覆盖的"template_name"时却没有这样做.有任何想法吗?

python django templates overriding widget

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

任何好的Java Swing Timeline小部件?

有没有人知道一个好的Java Swing Timeline Widget,其功能可与Janus Winforms时间轴组件相媲美?

java swing timeline widget

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