天道酬勤,学无止境

防止在 Chrome 中单击链接时更改光标(Preventing cursor change on link click in Chrome) 相关文章

当我单击画布并拖动鼠标时,光标会变为文本选择光标。 我怎样才能防止这种情况?(When I click on a canvas and drag my mouse, the cursor changes to a text-selection cursor. How can I prevent this?)
问题 这是一个小提琴:http://jsfiddle.net/MZ9Xm/ 注意:以下情况发生在 Chrome 22.0.1221.1 中,但不会发生在 Firefox 14.0.1 中。 [Ubuntu linux] 将鼠标移动到顶部画布并按住鼠标按钮。 拖动鼠标,光标将变为文本选择鼠标光标(I-bar)。 如果页面上没有其他元素,则不会发生这种情况。 我已经将用户选择设置为无,但没有任何运气。 回答1 您可以在画布中绑定 mousedown 事件以防止默认行为。 就像是: // with jQuery $( "#canvasId" ).mousedown(function(event){ event.preventDefault(); }); // without jQuery document.getElementById( "canvasId" ).onmousedown = function(event){ event.preventDefault(); }; 这是更新的小提琴:http://jsfiddle.net/MZ9Xm/1/ 您需要对此进行测试,以查看您正在执行的操作是否有副作用。 回答2 您是否尝试过使用 CSS 光标属性? canvas { cursor: pointer; } 它应该显示默认光标。 回答3 试试这个: var canvasEls =

2021-07-10 04:49:33    分类:技术分享    javascript   css   google-chrome   mouse-cursor

Firefox 中超链接内的 contenteditable span 的问题(Problems with contenteditable span inside hyperlink in Firefox)
问题 我在 <a> 标签内放置了一个 contenteditable 跨度。 我希望能够编辑跨度内的文本,因此重要的是: 将光标放在跨度内某处的鼠标单击上使用鼠标选择跨度内的部分文本 只要超链接中有 href 属性(在我的情况下也需要),两者都不适用于 Firefox。 没有这个属性就没有问题,Chrome也没有问题。 请在 JSFiddle 上尝试我的示例。 <ul> <li> <a href="#"> <span contenteditable="true">PlacingCursorOrTextSelectionInFirefoxImpossible</span> </a> </li> <li> <a> <span contenteditable="true">noProblemsHereSoFar</span> </a> </li> </ul> 回答1 您可以做些什么来改善点击行为,以防止其传播如下: <a href="#"> <span contenteditable="true" onclick="event.stopPropagation();"> PlacingCursorOrTextSelectionInFirefoxImpossible </span> </a> 不幸的是,这只允许将光标放在span ,但不知何故将其放在开头,而不是单击的位置。 要启用选择

2021-10-14 23:55:02    分类:技术分享    html   firefox   contenteditable

使用 URI 哈希识别选项卡时防止滚动(Preventing scroll when using URI hash to identify tab)
问题 我正在使用 JQuery UI 在我的应用程序中创建选项卡。 我需要标签是可链接的(打开页面并选择正确标签的直接链接)。 这是通过使用散列标签/分段标识符来完成的。 但是当标签和标签内的内容很长时间时,我有一个问题。 单击选项卡时,页面会向下滚动到选项卡的开头。 这不是我想要的。 我正在使用 Jquery 1.7.1 和 Jquery UI 1.8.16。 javascript/Jquery 代码是标准的 Jquery UI 选项卡,添加了事件“tabsshow”。 这是在使用 jquery ui 选项卡更改 location.hash(Stackoverflow 问题)和 JQuery UI 选项卡:在单击选项卡时使用哈希更新 URL(博客 - 罗宾的技术日记)中建议的 $(document).ready(function() { $("#tabs").tabs(); /** * Add hash to URL of the current page * * http://chwang.blogspot.com/2010/02/jquery-ui-tabs-updating-url-with-hash.html * https://stackoverflow.com/questions/570276/changing-location-hash-with-jquery-ui

2021-12-08 08:29:38    分类:技术分享    jquery   jquery-ui   tabs   jquery-ui-tabs   fragment-identifier

使用“指针事件:无”时添加CSS光标属性(Add CSS cursor property when using “pointer-events: none”)
问题 我试图禁用特定的链接并应用光标样式,但是此CSS命令cursor: text; 不会影响。 光标始终是默认值。 我正在使用最新的Firefox版本。 CSS: pointer-events: none !important; cursor: text; color: Blue; 回答1 使用pointer-events: none将禁用与该元素的所有鼠标交互。 如果要更改cursor属性,则必须将更改应用于父元素。 您可以使用元素包装链接,然后将cursor属性添加到其中。 这里的例子 的HTML <span class="wrapper"> <a href="#">Some Link</a> </span> 的CSS .wrapper { position: relative; cursor: text; /* This is used */ } .wrapper a { pointer-events: none; } 但是,存在一些浏览器不一致的地方。 要使此功能在IE11中起作用,似乎您需要一个伪元素。 伪元素还允许您选择FF中的文本。 奇怪的是,您可以在没有Chrome的情况下选择Chrome中的文本。 更新的例子 .wrapper:after { content: ''; position: absolute; width: 100%; height: 100%

2021-04-10 06:35:13    分类:技术分享    css

输入光标位置跳转到ng-change()结尾(Input cursor position jumps to end with ng-change())
问题 我有一个实例,其中我要通过ngChange替换ngModel的值。 每次更改后,光标跳到input字段的末尾(假设因为我将结果分配给相同的$scope变量。) 我想知道如何防止这种行为? $scope.compute1 = 0; $scope.compute2 = 10; $scope.math = function() { $scope.compute1 = parseInt($scope.compute1); $scope.compute2 = parseInt($scope.compute2); $scope.compute1 = parseInt($scope.compute1); }; 小提琴 问题的示例:如果用户输入1000。可以。 但是,如果他们想返回并通过仅添加5和6将数字更改为156000,则实际上会将6附加到末尾:15006。 回答1 游标移至末尾,因为我们使用parseInt修改了数据。 我建议您先存储插入符号的位置,然后在完成操作后将其放回原处。 此示例可能会帮助您:链接 回答2 两个建议: 1为什么不只使用数字输入。 <div ng-app='myApp'> <div ng-controller="myCtrl"> <input id="compute1" ng-model="compute.c1" ng-change="math()" type=

2021-05-24 13:29:45    分类:技术分享    angularjs   angularjs-ng-change

在 iOS Safari 中单击会在您点击的位置下方的元素上触发“悬停状态”(A click in iOS Safari triggers a "hover state" on element underneath where you tapped)
问题 在 iOS Safari 11 上,如果我将<div>定位在具有:hover效果的元素上,并且<div>有一个事件使其在单击时消失,那么我的“underneath”链接将在之后应用悬停效果元素从 DOM 中移除。 请参阅下面的动画 GIF,了解我正在谈论的内容: 我已经给按钮一个透明的背景,所以你可以看到它背后的链接。 当我在没有链接的地方点击按钮时,链接(即Some link )保持蓝色并且不会变为红色的悬停状态。 然而,当我点击了div中出现这种情况直接通过链接是,在后点div从DOM删除,链接获取其悬停状态应用。 在每个正确触发其on.click事件(警报窗口)后单击链接。 我在 Chrome 上的 android 上没有看到这个问题(见下面的例子): 您还会在下面找到我使用的示例 HTML/CSS/JS; 设置非常简单。 我想让 iOS 以与 Android Chrome 相同的方式运行:也就是说,单击立即从 DOM 中删除的元素不应触发紧跟在其后面的元素的:hover状态。 var button = document.querySelector(".button"); button.addEventListener("click", function() { button.parentNode.removeChild(button); }); var link =

2021-12-22 21:34:35    分类:技术分享    javascript   html   ios   css

Chrome 扩展:在不丢失弹出焦点的情况下打开新标签页(Chrome Extension: Open new tab without losing popup focus)
问题 我有一个关于 Chrome 扩展的研究链接的简单列表: <a href="http://www.example1.com" target="_blank">Research Link 1</a> <a href="http://www.example2.com" target="_blank">Research Link 2</a> <a href="http://www.example3.com" target="_blank">Research Link 3</a> 在任何网页上,我都可以 ctrl+单击所有三个链接,在后台打开新标签。 但是,Chrome 扩展弹出窗口似乎并非如此。 如果您按 ctrl+单击链接,扩展程序将关闭弹出窗口,从而防止您在任何时候单击多个链接。 我尝试了其他几篇文章中描述的点击式 chrome.tabs.create 方法,但这似乎与单击 target="_blank" 类似,因为它只是打开一个带有焦点的新选项卡。 chrome.tabs.create({url: 'http://www.google.com'}); 有没有办法在没有焦点的情况下打开新选项卡(ctrl+单击),同时仍然允许扩展弹出窗口在当前选项卡中保持可见,以便用户可以单击第二个、第三个或第四个链接? 这样用户就不必多次重新运行扩展程序,这需要时间,因为它必须再次验证和查询数据

2021-11-29 04:52:07    分类:技术分享    javascript   google-chrome-extension

在继续使用AutoHotkey之前,如何等待Google Chrome加载网页?(How do I wait for Google Chrome to load a webpage before continuing in AutoHotkey?)
问题 我正在研究在Chrome浏览器中执行重复工作的AutoHotkey脚本。 每次单击脚本中的链接时,都必须告诉我的脚本在页面加载时进入休眠状态。 我想知道AHK中是否有一种方法可以告诉脚本等待浏览器完成页面加载,而不是在设定的时间内休眠。 这可能吗? 回答1 尽管Karthik的答案比sleep命令更好,并且它可以在许多站点上正常运行,但我发现有些问题会逐渐蔓延,特别是如果您经常使用它。 我自己需要一个可靠的解决方案,我相信我终于找到了。 转到Chrome网上应用店,然后添加名为Control Freak的Google Chrome扩展程序。 这样可以轻松地设置代码块,这些代码块可以在单个页面,整个域或任何站点/页面上触发。 控制怪胎Chrome扩展程序 加载后,单击扩展的齿轮按钮。 在弹出窗口顶部的相应上下文/空间中单击,您需要进行页面加载检测。 即All 现在,您可以单击Libs选项卡。 向下滚动到jQuery。 您可以从喜欢的列表中选择任何版本,但我选择了最新版本。 请注意,CDN的URL添加在底部。 现在,单击底部的“ Save按钮后,无论选择哪种上下文,您都将始终可以使用jQuery。 切换回JavaScript选项卡并添加此代码,然后修改为您喜欢的方式: jQuery(function() { prompt("Diagnostic: Page Status",

2021-05-06 12:25:36    分类:技术分享    google-chrome   automation   autohotkey

阻止用户通过Firebug / Chrome开发工具查找密码(Prevent user to find password through Firebug/Chrome Dev Tools)
问题 对于护照输入字段: <input type="text" required="" tabindex="2" class="std_textbox" placeholder="Enter your account password." id="pass" name="pass"> 当<input type="password">更改为<input type="text">将显示密码。 在已保存密码或由密码管理器生成的系统中,这可能会有风险。 可以在这里使用客户端加密吗? 如何实施? 回答1 简短的回答:不幸的是,这是无法避免的。 这是因为所有客户端代码(JavaScript)均可由客户端本身修改-从而使基于客户端的安全系统易受攻击。 我能想到的唯一可行的解​​决方案是存储密码的哈希表示形式,而不是原始密码。 这将(如果您不考虑hash-bruteforce攻击)将使原始密码保持安全。 哈希表示原始文本,并且不可逆。 也就是说,任何算法都不能仅使用哈希来检索原始字符串。 哈希”的示例是MD5和SHA。 此技术通常在路由器中使用,其中密码通常存储在浏览器中。 说明:切勿将密码以纯文本格式存储,并且如果您想采用这种预先输入的密码技术,请不要使用任何其他密码。 哈希和/或加密必须在服务器端进行。 回答2 我看到了不同答案的解决方案。 在所有这些密码中,很难看到密码

2021-05-08 04:34:02    分类:技术分享    javascript   security   dom   browser   client

在 Chrome 中拖动时将光标更改为 HTML5 Canvas(Change cursor over HTML5 Canvas when dragging in Chrome)
问题 我正在研究如何在拖动鼠标时更改 HTML5 画布上的光标...遇到这个:拖动鼠标时更改 HTML5 画布上的光标 一个 :active 伪选择器可以做到这一点似乎合乎逻辑... 然而,当我在我的页面上使用它时,由 :active 伪选择器中的规则设置的光标被忽略,而是显示文本选择光标。 在 Firefox 中,此行为不存在 - 它遵循我设置的光标属性。 这是一个演示该行为的示例。 知道如何在 chrome 中解决这个问题吗? 回答1 工作小提琴 为 Chrome 添加以下内容以在拖放时关闭文本选择。 document.onselectstart = function(){ return false; }​ 这个回答了好几次了 chrome 在拖动时将光标设置为文本,为什么? 在 Chrome 中单击并拖动光标

2021-07-09 22:56:36    分类:技术分享    css   html   google-chrome   canvas   drag

在输入类型=“文件”上更改光标类型(Change cursor type on input type=“file” [duplicate])
问题 这个问题已经在这里有了答案: 设置输入类型=“文件”按钮的样式(43个答案) 5年前关闭。 一个简单的问题...如何更改文件输入类型上的游标类型? 我尝试了以下方法: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <style> input[type="file"] { cursor: pointer; } </style> </head> <body> <input type="file"> </body> </html> 由于某种原因,它不会打球。 回答1 知道这是一个旧线程。 但是,谷歌的结果带来了这一点...我刚刚找到了chrome的部分解决方案(不涉及Flash,JavaScript,额外的DOM操作以及溢出隐藏) Firefox已修复此错误 Safari(目前为7)和Chrome的行为不同 Safari(7,Mac)对我根本不起作用 chrome(也许是Opera,现在是webkit)可以使用:: webkit-file-upload-button伪类 。 input[type=file], /* FF, IE7+, chrome (except button) *

2021-04-06 15:29:49    分类:技术分享    html   css   input

如何使用 Fabric.js 实现画布平移(How to implement canvas panning with Fabric.js)
问题 我有一个 Fabric.js 画布,我想实现软件包通常使用“手动”工具进行的全画布平移。 这是当您按下鼠标按钮之一,然后在按住鼠标按钮的同时在画布上移动时,画布的可见部分会相应地发生变化。 你可以在这个视频中看到我想要实现的目标。 为了实现这个功能,我编写了以下代码: $(canvas.wrapperEl).on('mousemove', function(evt) { if (evt.button == 2) { // 2 is the right mouse button canvas.absolutePan({ x: evt.clientX, y: evt.clientY }); } }); 但它不起作用。 您可以在此视频中看到会发生什么。 如何按顺序修改我的代码: 平移像第一个视频一样工作? 让事件处理程序消费事件? 它应该防止在用户按下或释放鼠标右键时出现上下文菜单。 回答1 响应鼠标移动来平移 Fabric 画布的一种简单方法是计算鼠标事件之间的光标位移并将其传递给relativePan 。 观察我们如何使用前一个鼠标事件的screenX和screenY属性来计算当前鼠标事件的相对位置: function startPan(event) { if (event.button != 2) { return; } var x0 = event.screenX, y0

2021-06-23 08:23:20    分类:技术分享    javascript   canvas   fabricjs   panning

在Firefox和IE中,如何在拖动不同目标时更改光标?(In Firefox and IE how can change the cursor while dragging over different targets?)
问题 在HTML5中进行拖放时,我需要能够根据放置目标来更改光标。 在Chrome中,这可以通过更改dropEffect来实现, if (e.currentTarget.id == 'dropMove') { e.originalEvent.dataTransfer.dropEffect = 'move'; } else { e.originalEvent.dataTransfer.dropEffect = 'link'; } 但是,在IE和Firefox中更改dropEffect不会对光标产生影响。 请参见以下小提琴: http://jsfiddle.net/ksoncan34/s7kN5/ 我尝试使用window.cursor手动设置光标,但这也没有效果。 如何在Firefox和IE中更改不同放置目标的光标? 回答1 我建议使用jQuery ui-droppable和draggable。 您可以使用cursor: none隐藏默认/实际光标,并使用风格化的DOM元素呈现您自己的'cursor'元素。 我在这里提供了一个示例:http://jsfiddle.net/lawrencealan/WMyu7/78/ (2017年6月8日更新) 注意:在拖动“可拖动”属性元素期间, mousemove停止触发。 -- 编辑:截至2019年9月,该示例现已失效。 回答2 不幸的是

2021-05-25 18:04:07    分类:技术分享    javascript   html   firefox   drag-and-drop

在WPF中更改光标有时可行,有时无效(Changing the cursor in WPF sometimes works, sometimes doesn't)
问题 在几个用户控件上,我使用来更改光标 this.Cursor = Cursors.Wait; 当我点击某些东西时。 现在,我想在WPF页面上单击按钮来执行相同的操作。 当我将鼠标悬停在按钮上时,光标变为手形,但是单击它时,光标不会变为等待光标。 我想知道这是否与按钮有关,还是因为这是页面而不是用户控件? 这似乎是奇怪的行为。 回答1 仅当光标位于特定页面/用户控件上方时,您才需要将其作为“等待”光标吗? 如果没有,我建议使用Mouse.OverrideCursor: Mouse.OverrideCursor = Cursors.Wait; try { // do stuff } finally { Mouse.OverrideCursor = null; } 这将覆盖应用程序的光标,而不仅仅是应用程序UI的一部分,因此您要描述的问题消失了。 回答2 我们在应用程序中执行此操作的一种方法是使用IDisposable,然后使用using(){}块以确保完成后将游标重置。 public class OverrideCursor : IDisposable { public OverrideCursor(Cursor changeToCursor) { Mouse.OverrideCursor = changeToCursor; } #region IDisposable

2021-04-11 12:05:35    分类:技术分享    c#   wpf

防止按下键后光标隐藏在浏览器中(Prevent cursor from hiding in Browser after key is pressed)
问题 我知道,在大多数浏览器(最新一代)中,键入“ A”或“ Space”之类的任何键时,鼠标光标都会被隐藏。 这是为了让用户看到他输入的内容。一旦将鼠标移动一个像素,光标就会恢复可见。 现在出现了问题-即使在我将非输入元素(例如div或此类元素)作为焦点的情况下,这种情况也会在浏览器中无处不在。 但是,我确实不希望用户按下某个键后浏览器隐藏我的光标,因为我将按键用作快捷方式。 因此,问题是-是否有任何方法或技巧或任何方法可以防止这种情况的发生和/或在按键后使光标再次自动出现? 我已经尝试了各种Web“黑客”,例如不可见的div等,但是一切都没有成功。 编辑:有人质疑,我在最新的MAC-OS-X上的每个浏览器(Chrome最新,Firefox最新,Safari最新)上都遇到这种情况。 回答1 我只是想到了一个可能的解决方案,但要做到这一点确实很难,而且不会让用户烦恼: 每当光标移动时,保存其位置当文档观察到键入内容时,请在最后一次看到实际光标的确切坐标处显示光标图像(它仍然存在,但是隐藏了) 当实际光标再次移动时,隐藏图像(实际上,将此功能与1合并)。 这里的问题将是知道要显示什么光标图像。 首先,您必须检测用户是否在Mac(或其他隐藏光标的OS)上,还需要根据所悬停的对象显示哪个光标。 这意味着,对于您要悬停的每个元素,您还必须检测到正在显示哪个光标,并显示相同光标的图像。

2021-05-21 11:18:33    分类:技术分享    javascript   html   google-chrome   firefox

c# - 在c#中单击图像时如何将鼠标指针更改为图像(How to change the mouse pointer to an Image when clicked on it in c#)
问题 在 c# 中单击图像时,如何将鼠标指针更改为图像? 回答1 这篇 MSDN 文章解释了您将如何使用 WPF 做到这一点。 只需将他们的下拉列表更改为您感兴趣的图像的 OnClick。 您也可以在 WinForms 中连接到 OnClick 事件,但我没有现成的示例。 如果您使用的是 WinForms 而不是 WPF,请编辑您的问题以指定! 您可以使用以下方法创建自己的自定义光标: yourCursor = new Cursor(someImageStream); 这是我验证加载自定义光标的方法。 这当然有效,并结合了您自己的评论以及我在下面链接的博客文章中的一些信息。 var image = (Bitmap)Bitmap.FromFile(@"c:\cursorImage.bmp"); IntPtr ptr = image.GetHicon(); var handle = new SafeFileHandle(ptr, true); var yourCursor = System.Windows.Interop.CursorInteropHelper.Create(handle); Cursor = yourCursor; 此博客文章中提供了有关加载用于自定义光标的图像的更详细说明,该文章可能更强大,但考虑到上述情况,看起来比您需要的更多。 回答2 问题含糊不清/不清楚

2021-10-31 05:07:09    分类:技术分享    c#   .net   image   graphics   drawing

在锚标记内不会在悬停时切换光标(<content> within an anchor tag isn't switching cursor on hover)
问题 我应该指出这是一个聚合问题,而不是原生 HTML。 我有一个这样的模板 <template> <a href="{{ href }}"> <content></content> </a> </template> 当我将鼠标悬停在自定义元素上时,我的光标是cursor:text而不是cursor:pointer ,这是应用光标指针的简单修复,但我觉得好像应该继承这些属性。 有什么方法可以应用content并正确继承 a 属性? 此处的 jsfiddle 示例 更新:1 一个更大的问题是您也无法右键单击并选择复制链接。 更新:2 我想我现在明白了, <content>没有被传递高度或宽度,所以最外面的元素(自定义元素)是高度 0,宽度 0。所以锚点没有扩展的空间。 因此光标不会切换。 试过了,没有运气 ::content * { width:inherit; height:inherit; } 更新 3 这有点奏效。 我不得不给锚一个id=anchor并使用 jQuery。 $(this.$.anchor).append($(this).html()); 出于某种原因,这不会导入字体很棒的图标,在哪里。 也许是因为当我抓取 HTML 时它没有导入样式? 控制台也没有错误。 我将 to font-awesome 放在聚合物模板中,它起作用了,这有点糟糕。 需要更好的解决方案。

2021-11-08 21:30:06    分类:技术分享    html   polymer   web-component

谷歌浏览器显示灰色圆圈光标(Google Chrome shows gray circle cursor)
问题 当开发工具处于活动状态时,Google Chrome 会显示一个灰色圆圈光标。 为什么会发生这种情况,我该如何停止这种情况? 回答1 2017 年 11 月 29 日更新: @Howdy_McGee 为您带来的快速更新。 Chrome 62 你必须添加设备类型,不再有显示设备类型的选项。 为什么会这样? 正如兰迪霍尔在下面指出的那样“此光标表示“触摸”,例如您的手指,用于在()Chrome 浏览器中模拟触摸事件。” 2017 年 7 月 20 日更新:(版本 59.0.3071.115)刚刚再次签入,看起来即使通过一堆 Chrome 更新,以下内容仍然有效。 他们已将Show device type的措辞更改为Add device type 。 我更改了下面的措辞,但图像并未反映更改。 他们还改变了device type设置的工作方式,如下所述。 一旦进入响应模式(通过F12 ,然后ctrl + shift + m ),您将需要选择由 3 个灰色圆圈指示的设置部分,然后选择Add device type 。 执行此操作后,尺寸区域旁边将出现一个新下拉菜单,选择Mobile (no touch) 。 我想他们这样做是为了让您不必将其保留在桌面上并将user agent type调整为移动设备,如下所述。 设备类型是什么意思? 截至今天(2017 年 7 月 20 日)

2021-06-10 12:59:42    分类:技术分享    google-chrome   google-chrome-devtools

将浏览器光标从“等待”变为“自动”,而无需用户移动鼠标(Getting the browser cursor from “wait” to “auto” without the user moving the mouse)
问题 我使用此jQuery代码在Ajax调用期间将鼠标指针设置为其繁忙状态(沙漏)。 $('body').css('cursor', 'wait'); 并使用相应的代码将其设置为正常... $('body').css('cursor', 'auto'); 在某些浏览器上运行正常。 在Firefox和IE上,只要执行命令,鼠标光标就会改变。 这是我想要的行为。 在Chrome和Safari上,除非用户移动指针,否则鼠标光标不会从“忙”变为“自动”。 使勉强的浏览器切换鼠标指针的最佳方法是什么? 回答1 目前,这两种浏览器均存在错误。 两个链接上的更多详细信息(以及评论中): http://code.google.com/p/chromium/issues/detail?id=26723 和 http://code.google.com/p/chromium/issues/detail?id=20717 回答2 我宁愿这样更优雅地做到这一点: $(function(){ $("html").bind("ajaxStart", function(){ $(this).addClass('busy'); }).bind("ajaxStop", function(){ $(this).removeClass('busy'); }); }); CSS: html.busy, html.busy

2021-04-06 21:09:39    分类:技术分享    jquery   cursor   busy-cursor   mouse-pointer   hourglass

jQueryUI 选项卡将鼠标悬停在禁用的链接上,如何更改光标使其看起来不可点击?(jQueryUI tabs mouseover a disabled link, how do I change the cursor so it doesn't appear clickable?)
问题 我正在使用 jQuery ui 选项卡。 该应用程序正确地将 css 类设置为 .ui-state-disabled 并且可以单击该链接,但它不执行任何操作。 我在这里试图完成的是使光标显示为默认值而不是手/指针。 我不能让它工作。 css .ui-state-disabled:hover { cursor: default; } html <li class="ui-state-default ui-corner-top ui-state-disabled"> <a href="#Procedures" title="Procedures"> <div>Procedures</div> </a> </li> 有谁知道如何纠正这个问题? 我不希望用户认为该元素在此状态下是可点击的。 感谢您提供任何提示或技巧。 回答1 由于您使用的是 jQuery ui 并且想要覆盖其中的一个类,因此您需要使用!important 。 这样,您对类的 css 定义将变得更加重要。 .ui-state-disabled:hover { cursor: default !important; }

2021-12-24 07:38:16    分类:技术分享    jquery   html   css

使用更改的 CSS 光标属性更新鼠标光标而不移动鼠标(Update mouse cursor without moving mouse with changed CSS cursor property)
问题 我目前有一个 C# 主机,可以在网站上镜像屏幕和鼠标,连接工作完全正常,当主机上的鼠标更改时,它几乎立即更改 CSS。 这样我也可以镜像鼠标。 所以这里的问题是: 鼠标仅在我在客户端网站上移动鼠标时更新。 速度和性能在这里非常重要,快速解决方法是刷新画布,或稍微移动页面/鼠标,但我宁愿采用更复杂的方法。 回答1 您应该检查@rjmunro 链接的链接中给出的答案之一,它说: 我相信这个问题(包括 mousedown 问题)现在在 Chrome 50 中得到了修复。 但前提是您没有使用开发人员工具!! 关闭工具,光标应立即响应更好。 无需用户移动鼠标即可将浏览器光标从“等待”变为“自动”

2021-06-24 09:02:39    分类:技术分享    javascript   c#   jquery   html   css

防止 MFC 应用程序将光标更改回默认图标(Prevent MFC application to change cursor back to default icon)
问题 我编写了一个应用程序,它根据光标在窗口客户区中的位置来改变光标。 但是我注意到当我单击鼠标左键时,光标会变回默认箭头图标。 我已经覆盖了afx_msg void CWnd::OnLButtonDown()并且没有调用其中的任何基类函数(它完全是空的)。 知道什么可能导致CDialogEx将光标改回来吗? 什么处理左键单击消息? 回答1 通常,您需要覆盖OnSetCursor() ,并且在那里,如果鼠标位于您想要特定光标的位置,则调用SetCursor()并返回TRUE以便DefWindowProc不会将其重置回默认箭头。

2021-06-23 22:53:37    分类:技术分享    c++   windows   user-interface   mfc

使用 jQuery 防止 html 输入中的值(Preventing values in html inputs with jQuery)
问题 如果该输入与其最新按键的组合值未传递正则表达式,如何防止用户更改输入框中的字符串? 我看到了各种关于如何使用 keypress 测试单个字符的示例,但我需要将整个值与正则表达式匹配,而不仅仅是他们按下的键。 例如,文本框需要符合以下正则表达式: "^023-[0-9]{0,7}$" 因此,如果他们想将"023"更改为"23" ,则应在删除0字符时阻止他们。 删除023之后的-也是如此。 一旦他们在023之后输入超过 7 个数字,它也应该阻止他们。 这不能在模糊上完成。 必须在每次击键后完成。 性能不是问题。 如果我在 jQuery 中使用 keypress() 事件,并像这样获取输入元素的值: $(this).val() 然后我只会在他们按下键之前得到值 - 而不是之后。 因此,无法针对我的正则表达式测试输入。 我不能简单地将按下的键附加到这个字符串,因为我不能假设他们只在字符串的最右侧输入键。 我研究了 keydown/keyup 事件,虽然 keyup 似乎在用户按下一个键后给了我输入的当前值,但我发现很难消除他们键入的内容的影响...... which keypress()显然没有问题。 var regex = new RegExp("^023-[0-9]{0,7}$"); $("#number").keyup(function(event) { var number

2022-01-13 04:42:32    分类:技术分享    javascript   jquery   regex   validation   input

href与onclick中的JavaScript函数(JavaScript function in href vs. onclick)
问题 我想在单击时运行一个简单的JavaScript函数,而无需任何重定向。 将JavaScript调用放入href属性之间有什么区别或好处(例如: <a href="javascript:my_function();window.print();">....</a> )与将其放在onclick属性中(将其绑定到onclick事件)? 回答1 将onclick放在href内将激怒那些坚信内容与行为/动作分开的人。 理由是您的html内容应仅专注于内容,而不是表示或行为。 这些天的典型路径是使用javascript库(例如jquery)并使用该库创建事件处理程序。 它看起来像: $('a').click( function(e) {e.preventDefault(); /*your_code_here;*/ return false; } ); 回答2 坏的: <a id="myLink" href="javascript:MyFunction();">link text</a> 好的: <a id="myLink" href="#" onclick="MyFunction();">link text</a> 更好的: <a id="myLink" href="#" onclick="MyFunction();return false;">link text</a> 更好的1:

2021-03-26 10:21:07    分类:技术分享    javascript   href

What is the easiest way to disable/enable buttons and links (jQuery + Bootstrap)(What is the easiest way to disable/enable buttons and links (jQuery + Bootstrap))
问题 有时我使用样式设置为按钮的锚点,有时我仅使用按钮。 我想禁用特定的clicky-thing,以便: 他们看起来很残疾他们不再被点击 我怎样才能做到这一点? 回答1 纽扣 按钮很容易禁用,因为disabled是由浏览器处理的按钮属性: <input type="submit" class="btn" value="My Input Submit" disabled/> <input type="button" class="btn" value="My Input Button" disabled/> <button class="btn" disabled>My Button</button> 要使用自定义jQuery函数禁用这些功能,您只需使用fn.extend(): // Disable function jQuery.fn.extend({ disable: function(state) { return this.each(function() { this.disabled = state; }); } }); // Disabled with: $('input[type="submit"], input[type="button"], button').disable(true); // Enabled with: $('input[type="submit"

2021-03-27 02:17:17    分类:技术分享    jquery   html   css   twitter-bootstrap

空链锚(Empty-linked anchor)
问题 我有一个不会去任何地方但有一个 onclick 的锚点(例如<a onclick="..."></a> )。 我的问题与href属性有关。 我应该为价值投入什么? 如果我只是省略href ,则锚点没有适当的装饰——当鼠标放在它上面时,鼠标指针图标不会改变。 如果我使用href="#" ,则单击链接时窗口会滚动到页面顶部。 如果我使用href="javascript:..."并将onclick的值放入javascript: ,则在单击链接时,页面会离开并且地址栏包含 Javascript。 当我提到浏览器行为时,我指的是 Chrome,我正在对其进行测试。 当锚点不是实际链接但存在只是为了让onclick执行行为时,我应该为href什么? 回答1 在您的 onclick 处理程序中,将此添加到末尾: return false; 这将取消默认处理(即跟随链接),您可以在 href 中放入任何您想要的内容(# 与任何内容一样好)。 回答2 理想情况下,您可以为禁用 Javascript 的用户提供一个选项: <a href="degrade_option.html" onclick="return fancy_option();">do the option!</a> 如果您不喜欢那种事情,尽管您确实应该这样做,但最常见的方法是使用英镑,然后取消事件以防止发生默认操作,如下所示:

2021-06-03 18:03:18    分类:技术分享    javascript   html   anchor

在整个HTML页面上等待光标(Wait cursor over entire html page)
问题 是否可以通过简单的方式将光标设置为在整个html页面上“等待”? 这样做的目的是向用户显示ajax调用完成时发生了什么事情。 下面的代码显示了我尝试过的简化版本,还演示了遇到的问题: 如果元素(#id1)设置了光标样式,则它将忽略主体上的一个设置(显然) 一些元素具有默认的光标样式(a),并且不会在悬停时显示等待光标根据内容的不同,body元素具有一定的高度,如果页面较短,则光标将不会显示在页脚下方 考试: <html> <head> <style type="text/css"> #id1 { background-color: #06f; cursor: pointer; } #id2 { background-color: #f60; } </style> </head> <body> <div id="id1">cursor: pointer</div> <div id="id2">no cursor</div> <a href="#" onclick="document.body.style.cursor = 'wait'; return false">Do something</a> </body> </html> 以后编辑... 它在firefox和IE中具有以下功能: div#mask { display: none; cursor: wait; z

2021-04-28 18:44:08    分类:技术分享    javascript   html   css   dynamic-css

防止自动更改默认目录(Preventing automatic change of default-directory)
问题 根据 Emacs 文档,每次打开文件时,Emacs 都会将default-directory更改为包含该文件的目录。 然后,如果光标在该缓冲区中并且您(例如)启动 SLIME,它将使用default-directory作为 SLIME 的当前工作目录。 如果您尝试打开一个新文件,它会以default-directory作为起点打开该文件。 我希望能够Mx cd或以其他方式cd到一个目录,然后永远不要让 Emacs 将我当前的工作目录更改为该目录以外的任何目录,除非我另有说明。 我希望这在所有缓冲区中都是全局的,这样每当我在做涉及当前工作目录的事情时,我都知道它被设置为什么,而不管我的光标此刻在哪里。 有没有办法做到这一点? 回答1 你可以尝试使用这样的东西: (add-hook 'find-file-hook (lambda () (setq default-directory command-line-default-directory))) 回答2 另一个变体是将default-directory绑定到目录局部变量中的必要目录,例如在您的父目录之一的 .dir-locals.el 文件中,类似于: ((nil . ((default-directory . "~/.emacs.d/")))) 回答3 遗憾的是,这是迄今为止我想出的最好的: (defun find-file

2021-11-30 04:46:03    分类:技术分享    emacs

jQuery在文本区域中设置光标位置(jQuery Set Cursor Position in Text Area)
问题 如何使用jQuery在文本字段中设置光标位置? 我有一个带有内容的文本字段,并且我希望用户将光标放在该字段上时将光标定位在某个偏移量处。 该代码应该看起来像这样: $('#input').focus(function() { $(this).setCursorPosition(4); }); 该setCursorPosition函数的实现是什么样的? 如果您的文本字段的内容为abcdefg,则此调用将导致光标的定位如下:abcd ** | ** efg。 Java具有类似的功能setCaretPosition。 javascript是否存在类似的方法? 更新:我修改了CMS的代码以与jQuery配合使用,如下所示: new function($) { $.fn.setCursorPosition = function(pos) { if (this.setSelectionRange) { this.setSelectionRange(pos, pos); } else if (this.createTextRange) { var range = this.createTextRange(); range.collapse(true); if(pos < 0) { pos = $(this).val().length + pos; } range.moveEnd(

2021-03-26 16:35:02    分类:技术分享    javascript   jquery   html   textfield

在桌面上如何禁用指向电话号码的链接?(How to disable link to phone number when on Desktop?)
问题 如何将电话号码添加到可点击但在我浏览不支持触摸的网站时隐藏链接的网站。 我可以使用 Modernizr 来设置它。 我不知道怎么做 <a href="tel:1300723579"><p><img src="assets/images/bt_calltoaction.gif" alt="View Projects" width="306" height="60"></p></a> 回答1 我只是在处理这个问题,寻找解决方案,然后我找到了这个线程(以及其他一些线程)。 我不得不承认我无法让它们中的任何一个正常工作。 我确定我做错了什么,但我确实发现了作弊。 正如其他人指出的那样,更改 CSS 以隐藏可见链接指示( color 、 text-decoration 、 cursor )是第一步也是最简单的一步。 秘籍是为tel链接定义一个title 。 <p>Just call us at <a class="cssclassname" href="tel:18005555555" title="CLICK TO DIAL - Mobile Only">(800) 555-5555</a>.</p> 通过这样做,不仅链接的可见指示器被伪装了(通过 CSS - 请参阅其他人的示例),而且如果有人确实将鼠标悬停在链接上,则会弹出标题并显示“单击拨号 - 仅限移动设备”。 这样

2021-06-09 22:03:24    分类:技术分享    web   tel

如何使链接无法点击?(How do I make a link unclickable?)
问题 是否有一些 CSS 属性或我可以与我的锚标记一起使用的东西,以使其无法点击,或者我必须在后面的代码中做一些事情才能得到我想要的东西? [编辑] onclick=return false; 正在刷新页面.. 我不希望那样.. 希望这个锚标签显示为纯文本.. 实际上我在锚标签上应用了 css.. 所以不能把它改成简单的标签或其他什么 回答1 如果您希望锚标记是链接目标,而不是链接源,则省略 href 属性并只有 name 属性。 HTML 4.01 规范允许这样做,并建议浏览器将无 href 锚标记中的文本显示为普通文本。 回答2 pointer-events CSS 属性可以在现代浏览器中的特定图形元素上设置,并告诉元素在什么情况下可以成为指针事件的目标。 none值确保元素永远不会成为指针事件的目标,并防止元素上的所有单击、状态和光标选项。 a { display: inline-block; pointer-events: none; } <a href="http://stackoverflow.com" onclick="alert('clicked on link')"> <svg width="140" height="140" onclick="alert('clicked on svg')"> <rect x="10" y="10" width="120"

2021-06-25 09:57:16    分类:技术分享    javascript   html   css

空闲时使用 JavaScript 隐藏鼠标光标(Hiding the mouse cursor when idle using JavaScript)
问题 是否可以使用 JavaScript 将cursor属性设置为属性none如果鼠标在一定时间内(例如五秒)处于非活动状态,并在它再次变为活动状态时将其设置回auto ? 编辑:我意识到none不是cursor属性的有效值。 尽管如此,许多网络浏览器似乎支持它。 此外,这的主要用户是我自己,因此产生混淆的可能性很小。 我有两个脚本可以做类似的事情: window.addEventListener("mousemove", function(){ document.querySelector("#editor").style.background = "#000"; setTimeout("document.querySelector('#editor').style.background = '#fff'", 5000); } , true); 和 var timeout; var isHidden = false; document.addEventListener("mousemove", magicMouse); function magicMouse() { if (timeout) { clearTimeout(timeout); } timeout = setTimeout(function() { if (!isHidden) { document

2021-09-29 16:54:18    分类:技术分享    javascript   css   cursor   mousemove

防止用户在UITextField上设置光标位置(Prevent user from setting cursor position on UITextField)
问题 我有一个使用情节提要构建的UITextField。 我不想允许用户更改光标的位置,并始终将其保留在文本末尾的文本字段中。 我试图改变光标的位置在触地事件,但选择文本字段时,然后再次触摸文本字段改变光标的位置,该位置被改变: - (IBAction)amountBoxTouchDown:(id)sender { UITextPosition *start = [amountBox positionFromPosition:[amountBox beginningOfDocument] offset:amountBox.text.length]; UITextPosition *end = [amountBox positionFromPosition:start offset:0]; [amountBox setSelectedTextRange:[amountBox textRangeFromPosition:start toPosition:end]]; } 有人知道解决方案吗? 谢谢 回答1 好的,您要做的是隐藏一个UITextField。 将那个隐藏的文本字段添加到视图中,然后在其上调用beginFirstResponder。 从您的amountBoxTouchDown:方法。 在Textfield委托中,接受用户键入的文本,然后将其添加到amountBox.text

2021-04-26 18:30:59    分类:技术分享    iphone   ios   objective-c

如何在不使用 javascript 的情况下将跨度设置为看起来像链接?(How do I style a span to look like a link without using javascript?)
问题 对于我的网站,我需要使用<span>而不是<a> ,因为我主要使用 ajax,因此我将 onclick ajax 事件作为跨度中的属性而不是链接。 结果,我不得不手动将跨度设置为看起来像链接。 我已经使用悬停并访问了伪类来更改背景和文本颜色,但是要将鼠标默认更改为悬停时的食指,我是否需要使用 javascript? 或者我可以使用css来做到这一点吗? 另外,我刚刚意识到:无论如何我都不能只使用<a>标签而不是<span> ,而是要包含一个 onclick,而不是一个 href ? 它应该一样工作,不是吗? 回答1 span { cursor:pointer; color:blue; text-decoration:underline; } <a href="#">Hyperlink</a><br /> <span>Span</span> 此外,您可以使用:hover伪类在悬停时为元素设置样式(您可以使用任何样式,而不仅仅是最初使用的样式)。 例如: span:hover { text-decoration:none; text-shadow: 1px 1px 1px #555; } 回答2 请注意,如果您的网站是公开的,并且您指望搜索引擎来抓取您的网站,那么您会因忽略不带href链接而损失很多,因为蜘蛛在抓取您的网页时没有任何东西可供抓取。 您应该使用完整的链接 -

2021-06-09 11:52:23    分类:技术分享    html   css

在加载 jQuery 之前阻止链接(Preventing Links before jQuery is Loaded)
问题 如何在加载 jQuery 之前阻止单击事件上的链接? 原因是我几乎没有通过 jQuery ajax 函数进行 AJAX 调用的链接,如果用户在加载 jQuery 框架之前单击它们,浏览器将无法触发 jQuery ajax 函数并且将遵循链接 href="..." 谢谢。 编辑:我可以使用这个吗? <head> ... <script type="text/javascript"> window.onload = prevCl(); function prevCl() { var links = document.links[]; links.onclick = check(); } function check() { if (typeof jQuery == 'undefined') { return false; } } </script> </head> 回答1 四种方案供您选择: 选项 0 去阅读 Sean Hogan 的回答,他指出这可以通过委托来完成( doh! ),我整理了一个示例实现。 选项1 您可以将链接的href设为“#”,直到 jQuery 加载完毕,然后(如果合适)将其更改为真正应该的内容。 您可以在data-属性中存储href应该是什么,例如: <a href='javascript:;' data-href='realtarget.html'

2021-10-07 17:53:19    分类:技术分享    javascript   jquery   ajax   javascript-events   onclick

防止在新选项卡/窗口中打开页面(Preventing pages being open in a new tab/window)
问题 我正在处理一个项目,当用户在新选项卡或新窗口中打开页面时,该项目的行为非常奇怪,导致应用程序崩溃。 我需要一些可以帮助我防止这种情况的 javascript。 所以基本上我想阻止 ctrl+click,鼠标中键,shift+click,从上下文菜单中在新选项卡/窗口中打开; 或至少阻止尽可能多的。 我不想阻止右 ckick(如果可能),因为那永远不是解决方案。 注意:我对 js 很陌生,所以任何帮助将不胜感激。 回答1 代替 <a href="http://stackoverflow.com">link</a> 用 <a href="javascript:void(0);" onclick="javascript:window.location.href='http://stackoverflow.com';">link</a> 单击鼠标中键在同一选项卡中打开此位置, right click -> open in new tab打开打开about:blank页面。 当您无法手动编辑每个链接时,您可以使用此脚本: for(var els = document.getElementsByTagName('a'), i = els.length; i--;){ els[i].href = 'javascript:void(0);'; els[i].onclick =

2021-06-22 07:39:58    分类:技术分享    javascript

防止/处理有角的双击(Preventing / dealing with double button clicks in angular)
问题 在angular中,我们可以设置一个按钮来发送ajax请求,如下所示: ... ng-click="button-click" 并在控制器中: ... $scope.buttonClicked = function() { ... ... // make ajax request ... ... } 因此,为防止重复提交,我可以在单击按钮时将标志设置为buttonclicked = true,而在ajax回调完成时将其取消设置。 但是,即使这样,控制权仍会归还给有角力的人,他们将更新Dom。 这意味着有一个很小的窗口,在原始按钮单击完全100%完成之前,可以再次单击该按钮。 这是一个小窗口,但仍然可能发生。 完全避免这种情况发生的任何技巧-客户端,即不对服务器进行任何更新。 谢谢 回答1 在此示例中,使用ng-disabled效果很好。 无论我多么疯狂地单击控制台消息,它只会填充一次。 var app = angular.module('plunker', []); app.controller('MainCtrl', function($scope) { $scope.submitData = function() { $scope.buttonDisabled = true; console.log("button clicked"); } function

2021-04-07 00:40:30    分类:技术分享    angularjs

如何使用jQuery将光标从指针更改为手指?(How to change cursor from pointer to finger using jQuery?)
问题 这可能真的很容易,但是我从来没有做过。 如何将光标更改为手指(例如单击链接)而不是常规指针? 以及如何使用jQuery做到这一点,因为这就是我使用它的目的。 回答1 $('selector').css('cursor', 'pointer'); // 'default' to revert 我知道每个原始问题可能会使您感到困惑,但是“手指”光标实际上称为“指针”。 普通箭头光标只是“默认”。 所有可能的默认指针看起来都是DEMO 回答2 更新! 新功能和改进功能! 在GitHub上找到插件! 另一个要注意的是,尽管该方法很简单,但我创建了一个jQuery插件(在此jsFiddle中找到,只是在注释行之间复制和过去的代码),使更改任何元素上的光标变得简单,例如$("element").cursor("pointer") 。 但这还不是全部! 立即行动,您将获得手动功能position和ishover ,无需额外付费! 是的,2个非常方便的光标功能...免费! 它们的工作原理与演示中所示的一样简单: $("h3").cursor("isHover"); // if hovering over an h3 element, will return true, // else false // also handy as $("h2, h3").cursor("isHover");

2021-04-28 04:44:07    分类:技术分享    javascript   jquery   css

在 Chrome 扩展内容脚本中执行代码时,在光标处的文本区域/文本输入中插入文本(Insert text in a textarea/text input at the cursor, when code is being executed in a Chrome Extension content script)
问题 I am making a Chrome extension that places some stored, regularly used bits of text, into text inputs and text areas when a context menu item is chosen. 目前它的设置方式是,内容脚本中有一行负责插入: document.activeElement.value = "要插入的文本" + document.activeElement.value ; 这会将文本放在选择的任何文本框/可编辑区域的开头。 最好在用户当前在文本框中单击的任何位置插入文本,而不仅仅是在开始处。 我已经看到很多在光标/插入符号处输入文本的示例,但无法让它们从内容脚本中工作。 由于这不需要跨浏览器兼容,因此在光标处插入此文本的最简单方法是什么? 谢谢你的帮助 回答1 解决方案是使用 http://www.sitepoint.com/forums/showthread.php?t=709013 上的代码 更改该脚本的前几行,以便他们阅读 function insertAtCaret(text) { var txtarea = document.activeElement; javascript 然后不需要声明的所选元素的 id。 这在内容脚本中,以及

2021-10-15 13:04:58    分类:技术分享    javascript   textarea   google-chrome-extension

WPF TabControl-防止在选项卡更改时卸载?(WPF TabControl - Preventing Unload on Tab Change?)
问题 当WPF选项卡控件中的选项卡发生更改时,是否有办法防止选项卡卸载/重新加载? 还是如果不可能,是否有建议的方法来缓存选项卡的内容,这样就不必每次更改选项卡时都重新生成它们? 例如,一个选项卡的UI可以完全自定义并存储在数据库中。 当用户选择要处理的对象时,自定义布局中的项目将填充有该对象的数据。 用户预期初始加载或检索数据时会有轻微的延迟,但在选项卡之间来回切换时却不会,并且在更改选项卡时的延迟非常明显。 回答1 我在这里找到了解决方法:https://web.archive.org/web/20120429044747/http://eric.burke.name/dotnetmania/2009/04/26/22.09.28 编辑:这是更正的链接:http://web.archive.org/web/20110825185059/http://eric.burke.name/dotnetmania/2009/04/26/22.09.28 它基本上存储了选项卡的ContentPresenter,并在切换选项卡而不是重新绘制时加载了该选项。 由于这是一个删除/添加操作,因此仍在拖动/拖放选项卡时造成延迟,但是我也做了一些修改,使它也消失了(以较低的调度程序优先级运行删除代码,而不是添加代码,因此添加操作有机会取消删除操作并使用旧的ContentPresenter而不是绘制新的

2021-04-14 12:05:01    分类:技术分享    wpf   caching   tabcontrol

单击时选择HTML文本输入中的所有文本(Selecting all text in HTML text input when clicked)
问题 我有以下代码在HTML网页中显示文本框。 <input type="text" id="userid" name="userid" value="Please enter the user ID" /> 显示页面时,文本包含“请输入用户ID”消息。 但是,我发现用户需要单击3次才能选择所有文本(在这种情况下,请输入用户ID )。 只需单击一下就可以选择整个文本吗? 编辑: 抱歉,我忘了说:我必须使用输入type="text" 回答1 您可以使用以下javascript代码段: <input onClick="this.select();" value="Sample Text" /> 但显然,它不适用于移动Safari。 在这种情况下,您可以使用: <input onClick="this.setSelectionRange(0, this.value.length)" value="Sample Text" /> 回答2 先前发布的解决方案有两个怪癖: 在Chrome浏览器中,通过.select()进行的选择不粘滞-稍微增加超时即可解决此问题。 聚焦后,无法将光标放置在所需的位置。 这是一个完整的解决方案,它选择所有焦点上的文本,但允许在焦点之后选择特定的光标点。 $(function () { var focusedElement; $(document).on(

2021-03-30 16:01:02    分类:技术分享    javascript   html   textinput

更改 chrome 滚动条上的光标图像(Change cursor image on scrollbar in chrome)
问题 我需要在 Chrome 中更改滚动条的自定义光标。 我有灯箱,它设置了带有大 X 和关闭文本的自定义光标。 问题是在 chrome 中,光标定义也由滚动条继承,这看起来有点滑稽。 见小提琴: <div class="below"> <div class="full"> <div class="scrollable">long text</div> </div> </div> CSS: .full{ position:fixed; background:red; height:100%; width:80%; overflow-y:scroll; cursor: url('cursor.cur'),not-allowed; } .scrollable{ padding:1em; background:white; position:relative; display:block; width:80%; margin:50px auto; } http://jsfiddle.net/3fY9r/1/ 有什么方法可以只触发滚动条并将外观改回默认光标? 回答1 您可以使用 chrome 滚动条的供应商选择器来设置样式。 但是,我认为它不允许您更改光标。 你可以试试这个,看看它是否有效: ::-webkit-scrollbar { cursor:pointer; } 更新

2021-06-12 00:17:45    分类:技术分享    html   css   google-chrome

使表格行可点击(Making a Table Row clickable)
问题 我想知道使整个tr可点击的最佳方法是什么? 最常见(也是唯一的?)解决方案似乎是使用JavaScript,方法是使用onclick =“ javascript:document.location.href('bla.htm');” (不要忘记:使用onmouseover / onmouseout设置适当的光标)。 虽然可以,但很遗憾,目标URL在浏览器的状态栏中不可见,这与普通链接不同。 所以我只是想知道是否还有优化的空间? 是否可以在浏览器的状态栏中显示将导航到的URL? 还是什至有一种非JavaScript的方法可以使tr可点击? 回答1 幸运的是,由于欺诈的意图,大多数现代浏览器不再允许您控制状态栏(这在今天很可能并且很流行)。 最好的选择是title属性或javascript工具提示。 回答2 如果您不想使用javascript,可以通过将每个td元素的内容包装在匹配的定位标记中来完成Chris Porter的建议。 然后将锚标签设置为display: block并将height和line-height设置为与td的高度相同。 然后,您应该发现td的触摸无缝,效果是整个行都是可单击的。 请注意在td上的填充,这会在可点击区域造成间隙。 而是将填充应用于锚标记,因为如果这样做,它将成为可点击区域的一部分。 我还喜欢通过在tr

2021-05-24 11:20:24    分类:技术分享    javascript   html

jQuery输入全选焦点(jquery input select all on focus)
问题 当用户将重点放在字段上时,我正在使用此代码尝试选择字段中的所有文本。 发生的是,它一秒钟选择了所有内容,然后未选择它,并且将键入的光标留在了我单击的位置... $("input[type=text]").focus(function() { $(this).select(); }); 我希望所有这些都保持选中状态。 回答1 尝试使用click而不是focus 。 它似乎适用于鼠标和按键事件(至少在Chrome / Mac上有效): jQuery <版本1.7: $("input[type='text']").click(function () { $(this).select(); }); jQuery 1.7+版本: $("input[type='text']").on("click", function () { $(this).select(); }); 这是一个演示 回答2 我认为发生的事情是这样的: focus() UI tasks related to pre-focus callbacks select() UI tasks related to focus (which unselect again) 一种解决方法可能是异步调用select(),以便它在focus()之后完全运行: $("input[type=text]").focus(function()

2021-04-11 20:15:26    分类:技术分享    jquery   input

jQuery设置鼠标位置(不是光标位置)(jQuery Set Mouse Position (not cursor position))
问题 我有一个链接,当单击该链接时,我希望它可以将鼠标的位置向右移动(或就此而言,在视口中的任何位置)。 在代码中,它可能看起来类似于以下内容: $('a#expand').click(function(e){ $(document) .mouseXPos(e.pageX + 50) .mouseYPos(e.pageY + 50); }); 当然,链接不一定是必需的,但是我追求的是类似的“设置鼠标位置”功能。 我已经看到了将光标位置移动到文本中某个位置的解决方案,但是我并没有从中获得太多帮助。 回答1 没有通过JavaScript移动鼠标的机制。 回答2 我可能是错的,但是我认为不可能从客户端脚本中移动鼠标指针。 考虑到潜在的滥用行为,我当然希望不会。 回答3 无法通过JavaScript或任何客户端脚本来完成鼠标位置更改。 这样做的唯一原因是不使客户端脚本具有前面所述的潜在滥用可能性。 回答4 您可以隐藏光标,并在其他位置显示另一个光标。 例如在迷宫中走动时很高兴。 光标看起来好像已经停止了,但是当您移出窗口之外时,您将再次看到它。 回答5 正如其他用户已经提到的那样,JavaScript没有任何机制可以做到这一点。 但是,您可以禁用鼠标并实现光标以执行所需的操作。 这是一个说明操作方法的链接。 如何实现自定义光标。 回答6 您可以映射更改滚动位置

2021-04-03 18:32:19    分类:技术分享    jquery   mouse   mouse-position

如何更改可调整大小的文本区域的光标?(How to change cursor for resizable textarea?)
问题 我有一个带有定义的 CSS 规则{ resize: both }的 HTML 元素textarea 。 在 FF 中,当用户将鼠标悬停在textarea的右下角时,光标会根据属性resize值发生变化,但在 Chrome 中光标不会发生变化。 请在 FF 和 Chrome 中打开此示例以检查差异。 这是谷歌浏览器的错误,我可以用 CSS 修复它吗? 更新 我向 Chromium 报告了错误:https://bugs.chromium.org/p/chromium/issues/detail?id=942017 更新 2 该错误已在 Chrome 80 中修复。 回答1 这是由浏览器本身呈现的,不能使用 css 设计 回答2 实际上,有或者至少有一些方法可以cursor: se-resize;器的样式并添加cursor: se-resize; 悬停时。 查看这篇文章:我可以设置 textarea 的调整大小抓取器的样式吗? 它描述了如何使用::-webkit-resizer来设置调整器的样式: ::-webkit-resizer { border: 2px solid black; background: red; box-shadow: 0 0 5px 5px blue; outline: 2px solid yellow; } 不幸的是,它在 Chrome 中停止工作

2021-10-24 13:39:55    分类:技术分享    html   css   google-chrome   cursor   textarea

如何在 Mac 上以编程方式更改光标大小(How to programatically change the cursor size on a Mac)
问题 我希望能够从我的程序中在 Mac 上设置光标大小的系统首选项(如辅助功能首选项中所示),然后在程序退出后将其设置回来。 有没有办法从应用程序设置光标大小(特别是)或系统偏好设置? 回答1 首先,如果您只是在光标指向您的窗口/视图/小部件时试图获得更大的光标,那么您就错了。 阅读 Cursor Manager 简介以了解正确的方法。 其次,即使您认为您确实想在程序运行时设置系统范围的光标,在继续之前请仔细考虑一下。 即使您的应用程序在后台或隐藏,光标也会保持大。 如果您已经朝着透明生命周期的想法(用户通常不应该注意到或关心您的应用程序不可见和您的应用程序已退出之间的区别)采取任何行动,这将更加令人困惑。 如果两个应用程序尝试这样做,会发生什么? 等等。 (不用说,Apple 会拒绝 App Store 中执行此操作的任何应用程序。) 第三,设置系统首选项实际上并没有做任何事情,直到系统读取该首选项的新时间。 并且无法保证何时会发生。 因此,除非您的应用满足于更改可能在用户退出并重新登录(然后在您退出后将其更改回)之前不会生效的偏好,否则它并不是那么有用。 但如果这真的是你想做的…… 设置系统首选项非常容易。 系统偏好设置修改的大部分值都在默认存储中。 “辅助功能”窗格中的大多数值都位于com.apple.universalaccess域中。

2021-06-09 15:32:20    分类:技术分享    objective-c   macos   cursor

我如何制作一个无处可去的链接?(How do I make a link that goes nowhere?)
问题 是否可以制作一个什么都不做的链接? 我希望该项目是一个链接,因此我可以在鼠标悬停时更改光标,但我不希望链接实际上转到任何地方,因为它实际上会触发在同一页面上显示具有额外功能的 div。 回答1 将添加到浏览器历史记录: <a href="#"></a> 不会添加到浏览器历史记录(首选方法): <a href="javascript:;"></a> 回答2 相反,您可以使用<span>并设置光标样式: <span id="node42" class="node-link">My Text</span> 并在样式表中指定光标: .node-link { cursor: pointer; } 这也将允许您稍后附加到节点以执行您的操作(此处使用 Prototype 显示): <script type="text/javascript"> $('node42').observe('click', function(event) { alert('my click handler'); }); </script> 回答3 在我看来,最完整的 hack free 解决方案是: <a href="" onclick="return false;">do absolutely nothing</a> 回答4 只需添加样式cursor:pointer元素: <a id="clickme"

2021-06-10 16:01:04    分类:技术分享    html   hyperlink

$(document).click()在iPhone上无法正常工作。 jQuery [重复]($(document).click() not working correctly on iPhone. jquery [duplicate])
问题 这个问题已经在这里有了答案: 如何在iPhone Web应用程序中使用jQuery进行点击事件(8个答案) 4年前关闭。 此功能在IE,Firefox和Chrome上均能完美运行,但在iPhone上,仅在单击<img>时才可以使用。 单击页面(除了img以外的任何地方)都不会触发该事件。 $(document).ready(function () { $(document).click(function (e) { fire(e); }); }); function fire(e) { alert('hi'); } HTML部分非常基础,不应成为问题。 有任何想法吗? 回答1 简短答案: <style> .clickable-div { cursor: pointer; } </style> 更长的答案: 重要的是要意识到,如果仅使用<a>标记,一切都会按预期进行。 您可以在iPhone上的常规<a>链接上错误地单击或拖动,并且所有行为都与用户期望的一样。 我想象您有一些不可单击的HTML,例如包含不能用<a>包裹的文本和图像的面板。 当我有一个我想完全可以单击的面板时,我就发现了这个问题。 <div class='clickable-div' data-href="http://www.stackoverflow.com"> ... clickable content

2021-03-30 08:19:02    分类:技术分享    javascript   jquery   iphone   click   onclick

CodeMirror:如何在光标位置之前或之后读取编辑器文本(CodeMirror: How to read editor text before or after cursor position)
问题 我正在尝试找到一种方法来测试光标前面是否有特定字符串,然后触发事件。 我正在尝试做的示例:用户单击编辑器内的某处, cursorActivity (光标或编辑器更改)事件,我捕获该事件并测试前 6 个字符是否与字符串'color:'匹配那么我做点什么。 除了捕获每次键入字符或粘贴字符串时触发的readInput事件之外,我似乎找不到任何可以让您实际直接从编辑器中读取的方法。 这在一定程度上有效,但当用户通过鼠标单击移动光标时会失败。 TL;DR 如何检测光标何时在特定字符串之后立即移动? 回答1 好的,终于找到了解决方案。 您可以使用editor.doc检索实际文档,它可以让您获取光标行和字符位置。 然后您可以使用editor.doc.getLine(n)检索所需的行并比较您的子字符串 这是我的测试用例: <!-- Create a simple CodeMirror instance --> <link rel="stylesheet" href="lib/codemirror.css"> <script src="lib/codemirror.js"></script> <textarea id="myTextarea"></textarea> <script> var editor = CodeMirror.fromTextArea(myTextarea, {

2022-01-21 22:34:34    分类:技术分享    javascript   plugins   codemirror   adobe-brackets

如何使表格中的整行都可单击作为链接?(how to make a whole row in a table clickable as a link?)
问题 我正在使用Bootstrap,但以下操作无效: <tbody> <a href="#"> <tr> <td>Blah Blah</td> <td>1234567</td> <td>£158,000</td> </tr> </a> </tbody> 回答1 作者注一: 请查看下面的其他答案,尤其是那些不使用jquery的答案。 作者注二: 保留后代,但肯定会在2020年采用错误的方法。(甚至早在2017年都是惯用语言) 原始答案 您正在使用Bootstrap,这意味着您正在使用jQuery:^),因此一种实现方法是: <tbody> <tr class='clickable-row' data-href='url://'> <td>Blah Blah</td> <td>1234567</td> <td>£158,000</td> </tr> </tbody> jQuery(document).ready(function($) { $(".clickable-row").click(function() { window.location = $(this).data("href"); }); }); 当然,您不必使用href或切换位置,您可以在点击处理程序函数中执行任意操作。 阅读jQuery以及如何编写处理程序; 使用类而不是id的优点是可以将解决方案应用于多行:

2021-03-27 05:49:05    分类:技术分享    html   html-table   bootstrap-4

链接整个表格行? [复制](Link entire table row? [duplicate])
问题 这个问题已经在这里有了答案: 如何使表格中的整行都可单击作为链接? (26个答案) 上个月关闭。 我知道可以用CSS链接整个表单元格。 .tableClass td a{ display: block; } 有没有一种方法可以将链接应用于整个表格行? 回答1 我同意Matti的观点。 使用一些简单的javascript会很容易。 一个快速的jquery示例将是这样的: <tr> <td><a href="http://www.example.com/">example</a></td> <td>another cell</td> <td>one more</td> </tr> 和 $('tr').click( function() { window.location = $(this).find('a').attr('href'); }).hover( function() { $(this).toggleClass('hover'); }); 然后在您的CSS中 tr.hover { cursor: pointer; /* whatever other hover styles you want */ } 回答2 使用::before伪元素。 这样,只有您不必处理Javascript或为每个单元格创建链接。 使用以下table结构 <table> <tr> <td><a

2021-04-19 06:46:35    分类:技术分享    html   css

如何在Visual Studio Code中创建多个游标(How can you create multiple cursors in Visual Studio Code [closed])
问题 关门了。 这个问题需要更加集中。 它当前不接受答案。 想要改善这个问题吗? 更新问题,使其仅通过编辑此帖子即可将重点放在一个问题上。 3年前关闭。 改善这个问题 在VS Code中创建多个光标的键盘快捷方式是什么? 回答1 按Alt并单击。 这适用于Windows和Linux *,也适用于Mac。 现在,Visual Studio Code 0.2中提供了更多的多光标功能: 多光标改进 Ctrl + D键(在Mac上为Cmd + D键)选择下一个出现在光标下的单词或当前选中的单词 Ctrl + K Ctrl + D将最后添加的光标移动到光标下或当前所选内容中单词的下一个出现位置默认情况下,这些命令使用matchCase。 如果查找小部件已打开,则将使用查找小部件设置(matchCase / matchWholeWord)来确定下一次出现 Ctrl + U (在Mac上为Cmd + U )撤消上一个光标操作,因此,如果添加的光标过多或输入了错误,则可以按Ctrl + U (在Mac上为Cmd + U )返回到先前的光标状态。 现在,向上或向下添加光标( Ctrl + Alt + Up / Ctrl + Alt + Down )(在Mac上为Cmd + Alt + Up / Cmd + Alt + Down )现在可以显示最后添加的光标

2021-04-11 05:01:21    分类:技术分享    visual-studio-code

值为空时Chrome中的HTML输入光标位置问题(HTML Input cursor position issue in Chrome when value is empty)
问题 就在最近,我注意到文本输入在Google Chrome浏览器中有显示问题,但仅当文本为空时才显示。 请注意,在顶部图像中,当输入为空时,光标在文本输入中的位置过高。 但是,一旦我们输入了一些文本,它就会自动更正: JSFiddle进行说明。 可能需要谷歌浏览器版本:38.0.2125.101 m HTML: <input name="tb_password" type="password" id="tb_password" class=" validate[required,custom[password]]" placeholder="Type your password here" autocomplete="off" style=" margin: 0; line-height: 46px; "> CSS: input[type="text"], input[type="password"] { width: 100%; height: 46px; line-height: 46px; font-size: 11pt; color: #555 !important; text-indent: 15px; border-top: solid 1px #c5c5c5; border-left: solid 1px #c5c5c5; border-bottom: solid

2021-05-31 20:16:29    分类:技术分享    html   css   google-chrome   html-input

显示菜单使光标消失(Showing menu make the cursor disappear)
问题 单击时光标消失,如下所示: 如何重现: 获取 Game Jam 菜单模板:https://www.assetstore.unity3d.com/en/#!/content/40465 使用从标准资产导入的 FPS 控制器添加另一个场景。 在 UI -> 启动选项组件中勾选“更改场景”。 按 Esc 并触摸滑块,任何单击都会使光标消失。 它看起来像这样:https://imgur.com/a/hefmP 如果我勾选鼠标外观 -> 在 FPS 控制器中锁定光标,则不会发生这种情况,但我也会在 FPS 游戏中看到光标。 我试图添加Cursor.lockState = CursorLockMode.Locked; Cursor.visible = false; Cursor.lockState = CursorLockMode.Locked; Cursor.visible = false; 暂停和取消暂停时正好相反,但这无济于事。 可能是因为MouseLook.cs也在更新它们: 我宁愿不将 FPSController 和暂停菜单结合起来,而且它们也在不同的场景中。 那么在进入暂停菜单时如何解锁光标呢? 是否有可以在这里使用的事件模式? 它也使场景变暗,但这是另一个问题。 回答1 它已被FirstPersonController脚本中使用的MouseLook脚本修改。

2021-10-18 21:47:43    分类:技术分享    c#   unity3d

如何在 Java 中更改光标图标?(How to change cursor icon in Java?)
问题 我想在执行 Java 应用程序时将光标图标更改为我自定义的 32x32 图像。 我查看并搜索,我发现的只是在 JComponent 上设置光标。 但是我希望光标在移动、浏览和单击的任何地方都更改为我指定的图标,只要 Java 应用程序仍在运行,或者您可以说程序运行时。 非常感谢。 回答1 标准光标图像: setCursor(Cursor.getDefaultCursor()); 用户定义的图像: Toolkit toolkit = Toolkit.getDefaultToolkit(); Image image = toolkit.getImage("icons/handwriting.gif"); Cursor c = toolkit.createCustomCursor(image , new Point(mainPane.getX(), mainPane.getY()), "img"); mainPane.setCursor (c); 您可以下载包含示例源的 zip:这里 回答2 调用 Component.setCursor。 Cursor 类作为几个预定义的游标。 可以创建自定义光标图像: setCursor(Toolkit.getDefaultToolkit().createCustomCursor( new ImageIcon("custom.png")

2021-10-09 23:51:22    分类:技术分享    java   icons   runtime   cursor

使用JavaScript将光标放在文本输入元素中的文本末尾(Use JavaScript to place cursor at end of text in text input element)
问题 将焦点设置到元素之后,通过JavaScript将光标放置在输入文本元素中文本末尾的最佳方法(我认为是最简单的方法)是什么? 回答1 我在IE中遇到了同样的问题(通过RJS /原型设置焦点之后)。 当该字段已经有一个值时,Firefox已经将光标留在末尾。 IE强制将光标移动到文本的开头。 我得出的解决方案如下: <input id="search" type="text" value="mycurrtext" size="30" onfocus="this.value = this.value;" name="search"/> 这在IE7和FF3中均有效 回答2 有一种简单的方法可以使它在大多数浏览器中运行。 this.selectionStart = this.selectionEnd = this.value.length; 但是,由于一些浏览器的怪癖,一个更具包容性的答案看起来像这样 setTimeout(function(){ that.selectionStart = that.selectionEnd = 10000; }, 0); 使用jQuery (设置侦听器,但没有必要) $('#el').focus(function(){ var that = this; setTimeout(function(){ that.selectionStart = that

2021-03-31 08:35:54    分类:技术分享    javascript

将鼠标指针移到特定位置?(Move the mouse pointer to a specific position?)
问题 我正在构建HTML5游戏,并且尝试将鼠标指针放在特定事件上的某个控件上,以便在特定方向上移动始终具有相同的结果。 这可能吗? 回答1 因此,我知道这是一个古老的话题,但是我首先要说这是不可能的。 当前最接近的事情是将鼠标锁定在单个位置,并跟踪其x和y的变化。 这个概念已经被Chrome和Firefox所采用。 它由所谓的,点击逃逸将破坏它。 通过我的阅读,我认为其想法是将鼠标锁定在一个位置,并报告类似于单击和拖动事件的运动事件。 这是发行文档: FireFox:https://developer.mozilla.org/zh-CN/docs/Web/API/Pointer_Lock_API Chrome:http://www.chromium.org/developers/design-documents/mouse-lock 这是一个非常简洁的演示:http://media.tojicode.com/q3bsp/ 回答2 您不能使用javascript移动鼠标指针。 如果可以的话,请考虑一秒钟的含义;) 用户认为:“嘿,我想点击此链接” Javascript将mousecursor移至另一个链接用户单击错误的链接,无意中下载了恶意软件,该恶意软件格式化了他的C驱动器并吃掉了糖果 回答3 在客户端计算机上运行小型Web服务器。 可以是一个100kb的小东西。 Python /

2021-03-31 03:13:32    分类:技术分享    javascript   mouse

在线程持续时间内更改光标(Change cursor for the duration of a thread)
问题 在 MFC 应用程序中,只要线程正在运行,我想显示等待光标(沙漏),但调用 SetCursor(LoadCursor(NULL, IDC_WAIT)); 从静态 ThreadProc 成员函数内部没有任何效果。 有什么帮助吗? 谢谢, 塞尔 编辑 弄清楚了。 这是一种方法: 在构造函数中调用 LoadCursor: m_cursor = LoadCursor(NULL, IDC_WAIT); 在 AfxBeginThread 之前调用 SetCursor: SetCursor(m_cursor); AfxBeginThread( ... ); 覆盖 OnSetCursor 以防止光标过早变回: CMyView::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) { if (m_thread_is_running) { return false; } else { return CView::OnSetCursor(pWnd, nHitTest, message); } } 回答1 我没有检查,但我认为每次鼠标移动时都会更新光标。 因此,您要么在每次收到 WM_SETCURSOR 消息时调用 SetCursor(),要么更改默认光标。 请注意,您不应在每次设置光标时调用 LoadCursor()。 默认光标设置在窗口的

2022-02-08 02:20:50    分类:技术分享    winapi   mfc

在使用Javascript / jquery的游标中插入文本(Inserting a text where cursor is using Javascript/jquery)
问题 我的页面上有很多文本框。 当有人单击链接时,我希望在光标所在的位置插入一两个单词,或将其附加到具有焦点的文本框中。 例如,如果光标/焦点在文本框上说“ apple”,而他单击一个链接上说“ [email]”,那么我希望文本框说“ apple bob@example.com”。 我怎样才能做到这一点? 如果焦点集中在radio / dropdown / non textbox元素上,该怎么办呢? 可以记住上一个专注于文本框的内容吗? 回答1 从这里使用: function insertAtCaret(areaId, text) { var txtarea = document.getElementById(areaId); if (!txtarea) { return; } var scrollPos = txtarea.scrollTop; var strPos = 0; var br = ((txtarea.selectionStart || txtarea.selectionStart == '0') ? "ff" : (document.selection ? "ie" : false)); if (br == "ie") { txtarea.focus(); var range = document.selection.createRange(); range

2021-03-26 10:16:31    分类:技术分享    javascript   jquery