我想为用户提供resizing textarea控件.我已经给了这个去看看其他一些实现,但我似乎找不到满足我所有要求的实现.具体来说,我想要一个控件:
我看到的最接近这种功能的是Facebook的状态更新字段,它是作为内容可编辑的div元素实现的,但我对使用这样的元素有一些保留,因为使用div意味着:
我上面列出的内容代表了"最终调整文本区域" - 解决了我认为现有方法存在的问题.这样的控制存在吗?是否可以编写这样的控件?
我正面临着我制作的时钟小部件的问题.我希望用户触摸时钟并在手机上启动时钟应用程序.这是代码:
//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) 假设您有一个JavaScript小部件,当且仅当用户想要点击它时,才需要向您的Web应用程序发出请求.您不希望此请求容易受到CSRF的攻击,因此您可以向页面编写iframe.根据原始继承规则,父站点将无法读取CSRF令牌.然而,点击劫持(或像劫持)呢?由于CSRF,你必须在iframe中,而x-frame-options无法帮助,对于帧破坏者也是如此.
在加载小部件后,攻击者将在iframe中应用SVG掩码.此掩码将使iframe不可见.此时,攻击者可以将iframe的大小调整为页面大小,也可以使iframe跟随游标不可见.无论何时用户点击页面上的任何位置,iframe都会收到点击事件及其游戏结束.
所以有一个二元性,似乎你陷入了CSRF和Clickjacking之间.什么是这个问题的最佳解决方案(如果有的话)?
我在为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小部件大小?
谢谢
我想嵌入twitter小部件,其中包含带有hashtag和用户帐户的搜索结果.'#hashtag或@username'不起作用
我正在尝试在我的处方集上使用带有几个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) 假设我是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时,我想知道这是否可以解决这两个问题.这将允许我有一个脚本,创建一个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属性.
我试图删除故事板文件和相关Info.plist条目,但这次延期停止了工作; 它甚至没有从XCode启动.
The operation couldn’t be completed. (LaunchServicesError error 0.)
常规应用程序(包含应用程序)很容易,因为我们看到它的入口点和应用程序委托,但是如何在扩展程序上执行此操作?
我试图在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"时却没有这样做.有任何想法吗?
有没有人知道一个好的Java Swing Timeline Widget,其功能可与Janus Winforms时间轴组件相媲美?
widget ×10
javascript ×3
android ×2
django ×2
python ×2
security ×2
browser ×1
clickjacking ×1
clock ×1
dom ×1
forms ×1
hashtag ×1
homescreen ×1
ios ×1
ios8 ×1
java ×1
overriding ×1
search ×1
shadow-dom ×1
social-media ×1
swing ×1
templates ×1
timeline ×1
twitter ×1