- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好吧,我在这上面花了一整天,但我遗漏了一些东西,只是想不通。我正在使用这个简单的颜色选择器 http://www.dynamicdrive.com/dynamicindex11/colorjack/index.htm
我想做的是更新背景颜色,然后更新字体颜色,让用户看到实时结果,并在文本输入框中自动更新十六进制颜色代码。下面是我的代码。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Color Picker</title>
<link href="plugin.css" rel="stylesheet" type="text/css" />
<script src="plugin.js" type="text/JavaScript"></script>
</head>
<body>
<div id="plugin" onmousedown="HSVslide('drag','plugin',event)" style="TOP: 140px; LEFT: 430px; Z-INDEX: 20;">
<div id="plugHEX" onmousedown="stop=0; setTimeout('stop=1',100);">F1FFCC</div><div id="plugCLOSE" onmousedown="toggle('plugin')">X</div><br>
<div id="SV" onmousedown="HSVslide('SVslide','plugin',event)" title="Saturation + Value">
<div id="SVslide" style="TOP: -4px; LEFT: -4px;"><br /></div>
</div>
<form id="H" onmousedown="HSVslide('Hslide','plugin',event)" title="Hue">
<div id="Hslide" style="TOP: -7px; LEFT: -8px;"><br /></div>
<div id="Hmodel"></div>
</form>
</div>
<table>
<tr>
<td class="formlabel" align="right" valign="top">
<!-- color box to show background color and font color -->
<div id="currentcolor" style="margin-top:2px;padding:4px 10px 4px 10px;background-color:F1FFCC"><span id="showfontcolor" style="color:">Current Text Color</span></div>
<!-- End color box --></td>
<td valign="top"><table>
<tbody>
<tr>
<td><div class="small">Background Color</div>
<input name="colorcode" id="colorcode" value="" maxlength="199" class="textbox" style="width:80px" type="text">
<a href="javascript:toggle('plugin','colorcode');">Color Picker</a></td>
<td> </td>
<td><div class="small">Text Color</div>
<input name="fontcolor" id="fontcolor" value="" maxlength="199" class="textbox" style="width:80px" type="text">
<a href="javascript:toggle('plugin','fontcolor');">Color Picker</a></td>
</tr>
</tbody>
</table></td>
</tr>
</table>
<script type="text/javascript">
//*** CUSTOMIZE mkcolor() function below to perform the desired action when the color picker is being dragged/ used
//*** Parameter "v" contains the latest color being selected
function mkColor(v){
//** In this case, just update DIV with ID="colorbox" so its background color reflects the chosen color
$S('currentcolor').background='#'+v;
$('colorcode').value='#'+v;
}
loadSV(); updateH('F1FFCC');
toggle('plugin');
</script>
</body>
</html>
问题是它不会实时更新输入 colorcode
和 fontcolor
。
最佳答案
所以您的 javascript 有几处错误。下面我修复了你的代码:
function mkColor(v){
var field2update = $('#divUpdateID')[0].innerHTML;
if (field2update=='colorcode') {
$('#currentcolor').background='#'+v;
$('#colorcode').value='#'+v;
} else if (field2update=='fontcolor') {
$('#showfontcolor').color='#'+v;
$('#fontcolor').value='#'+v;
}
}
你所有的 jquery 选择器都坏了。此外,innerHTML
是一个 dom 函数而不是 jquery 函数,因此它需要用于 dom 对象而不是 jquery 对象数组。
以下是更新这些内容的方法。你必须弄清楚将它放在代码中的什么位置,因为我不太清楚它们应该放在哪里:
$("#currentcolor").html("The value it needs to be updated with!");
$("#colorcode").value = "Same as above!";
上面更新背景,下面更新你的fontcolor
:
$("#fontcolor").value = "The value you want!";
$("#currentcolor").css("color", "your text color value here!"); //this line updates the color of the text in the `currentcolor` div;
编辑:
这是对上述代码的重写,也是对您使用的插件的更改:
对插件的更改:
var type_to_update = ''; //this goes in the global namespace,
...
function toggle(v, type){ //changed to accept which input should be updated
$S(v).display=($S(v).display=='none'?'block':'none');
type_to_update = type; //updating the global variable
}
更改您的代码:
function mkColor(v){
if(type_to_update == 'colorcode' || type_to_update == ''){ //default to changing background color if one of the pickers has not been clicked on.
$S('currentcolor').background = "#"+v;
$('colorcode').value = '#'+v;
}else if(type_to_update == 'fontcolor'){
$S('currentcolor').css("color", '#'+v);
$('fontcolor').value = '#'+v;
}
loadSV();
updateH('F1FFCC');
toggle('plugin');
}
关于javascript - 拾色器更新输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15077904/
我之前让 dll 注入(inject)器变得简单,但我有 Windows 7,我用 C# 和 C++ 做了它,它工作得很好!但是现在当我在 Windows 8 中尝试相同的代码时,它似乎没有以正确的方
我正在尝试制作一个名为 core-splitter 的元素,该元素在 1.0 中已弃用,因为它在我们的项目中起着关键作用。 如果您不知道 core-splitter 的作用,我可以提供一个简短的描述。
我有几个不同的蜘蛛,想一次运行所有它们。基于 this和 this ,我可以在同一个进程中运行多个蜘蛛。但是,我不知道如何设计一个信号系统来在所有蜘蛛都完成后停止 react 器。 我试过了: cra
有没有办法在达到特定条件时停止扭曲 react 器。例如,如果一个变量被设置为某个值,那么 react 器应该停止吗? 最佳答案 理想情况下,您不会将变量设置为一个值并停止 react 器,而是调用
https://code.angularjs.org/1.0.0rc9/angular-1.0.0rc9.js 上面的链接定义了外部js文件,我不知道Angular-1.0.0rc9.js的注入(in
我正在尝试运行一个函数并将服务注入(inject)其中。我认为这可以使用 $injector 轻松完成.所以我尝试了以下(简化示例): angular.injector().invoke( [ "$q
在 google Guice 中,我可以使用函数 createInjector 创建基于多个模块的注入(inject)器。 因为我使用 GWT.create 在 GoogleGin 中实例化注入(in
我在 ASP.NET Core 1.1 解决方案中使用配置绑定(bind)。基本上,我在“ConfigureServices Startup”部分中有一些用于绑定(bind)的简单代码,如下所示: s
我在 Spring MVC 中设置 initBinder 时遇到一些问题。我有一个 ModelAttribute,它有一个有时会显示的字段。 public class Model { privat
我正在尝试通过jquery post发布knockoutjs View 模型 var $form = $('#barcodeTemplate form'); var data = ko.toJS(vm
如何为包含多态对象集合的复杂模型编写自定义模型绑定(bind)程序? 我有下一个模型结构: public class CustomAttributeValueViewModel { publi
您好,我正在尝试实现我在 this article 中找到的扩展方法对于简单的注入(inject)器,因为它不支持开箱即用的特定构造函数的注册。 根据这篇文章,我需要用一个假的委托(delegate)
你好,我想自动注册我的依赖项。 我现在拥有的是: public interface IRepository where T : class public interface IFolderReposi
我正在使用 Jasmine 测试一些 Angular.js 代码。为此,我需要一个 Angular 注入(inject)器: var injector = angular.injector(['ng'
我正在使用 Matlab 代码生成器。不可能包含代码风格指南。这就是为什么我正在寻找一个工具来“ reshape ”、重命名和重新格式化生成的代码,根据我的: 功能横幅约定 文件横幅约定 命名约定 等
这个问题在这里已经有了答案: Where and why do I have to put the "template" and "typename" keywords? (8 个答案) 关闭 8
我开发了一种工具,可以更改某些程序的外观。为此,我需要在某些进程中注入(inject)一个 dll。 现在我基本上使用这个 approach .问题通常是人们无法注入(inject) dll,因为他们
我想使用 swing、spring 和 hibernate 编写一个 java 应用程序。 我想使用数据绑定(bind)器用 bean 的值填充 gui,并且我还希望它反射(reflect) gui
我有这段代码,当两个蜘蛛完成后,程序仍在运行。 #!C:\Python27\python.exe from twisted.internet import reactor from scrapy.cr
要点是 Spring Batch (v2) 测试框架具有带有 @Autowired 注释的 JobLauncherTestUtils.setJob。我们的测试套件有多个 Job 类提供者。因为这个类不
我是一名优秀的程序员,十分优秀!