如何告诉YUI-Editor将所有文本括起来<p></p>并使用,<p></p>而不是<br>在用户发出换行符时?
这里有一个例子来说明我正在尝试做的事情:
而不是这个:
The quick brown fox<br>jumps over the lazy dog
Run Code Online (Sandbox Code Playgroud)
我想要这个:
<p><p>The quick brown fox</p><p>jumps over the lazy dog</p></p>
Run Code Online (Sandbox Code Playgroud)
任何想法除了解析整个HTML之前如何做到这一点,然后保存并找到 - 替换标签?
更新:我刚注意到,<p></p>如果整个文本都包含在内,YUI编辑器会自动发布换行符<p></p>.换句话说,问题是:
如何告诉YUI编辑器将整个文本包含在textarea中
<p></p>?
让Nokogiri选择start和stop元素之间的所有内容(包括start/stop-element)最聪明的方法是什么?
检查下面的示例代码,了解我在寻找什么:
require 'rubygems'
require 'nokogiri'
value = Nokogiri::HTML.parse(<<-HTML_END)
"<html>
<body>
<p id='para-1'>A</p>
<div class='block' id='X1'>
<p class="this">Foo</p>
<p id='para-2'>B</p>
</div>
<p id='para-3'>C</p>
<p class="that">Bar</p>
<p id='para-4'>D</p>
<p id='para-5'>E</p>
<div class='block' id='X2'>
<p id='para-6'>F</p>
</div>
<p id='para-7'>F</p>
<p id='para-8'>G</p>
</body>
</html>"
HTML_END
parent = value.css('body').first
# START element
@start_element = parent.at('p#para-3')
# STOP element
@end_element = parent.at('p#para-7')
Run Code Online (Sandbox Code Playgroud)
结果(返回值)应如下所示:
<p id='para-3'>C</p>
<p class="that">Bar</p>
<p id='para-4'>D</p>
<p id='para-5'>E</p>
<div class='block' id='X2'>
<p id='para-6'>F</p>
</div>
<p id='para-7'>F</p>
Run Code Online (Sandbox Code Playgroud)
更新:这是我目前的解决方案,但我认为必须有更聪明的东西:
@my_content = ""
@selected_node …Run Code Online (Sandbox Code Playgroud) 假设我有一个名为foo的CSS类,但希望它在TinyMCE styleselect-menu(高级主题中可用的默认按钮之一)中显示为foo(1).
我尝试使用class_filter选项来执行此操作,但这似乎不起作用.
你会如何解决这个问题?
我没有将以下PHP/ImageMagick代码转换为Ruby RMagick(以使其对未来用户更易于管理并了解它的真正用途):
$output = array();
$returnValue = 0;
$pngFiles = $myDir->find("/.png$/i");
foreach($pngFiles as $pngFile) {
$cmd = 'convert '.$pngFile->path.' -resize 1x1 -alpha on -channel o -format "%[fx:u.a]" info:'
exec($cmd, $output, $returnValue);
if($output[0] != 1) {
logMessage("PNG file contains some alpha transparency and will not be modified");
}
}
Run Code Online (Sandbox Code Playgroud)
到现在为止,我以为我或多或少地理解了convert-command正在做什么,但将其翻译成RMagick让我重新思考.
例如:为什么$output[0] != 1 有时候 true在PNG格式$myDir,但RMagick的Image.alpha?是始终 true对PNG图像的$myDir?我错过了什么吗?
我认为,如果有人能够向我解释转换命令正在做什么(包括表达式%[fx:u.a]),那么让我回到正轨的最佳方法就是.
更新:与此同时,我编写了我需要此信息的脚本.您可以在Github上查看它是否对您有任何帮助.
我使用Sinatra和Rest-Graph gem构建了一个Facebook应用程序.现在我想将该应用程序嵌入Facebook页面中作为iframe选项卡.
为此,我需要signed_request通过Facebook 从发送到我的应用程序中获取数据.
Rest-Graph gem 在其Github页面上声明了以下功能:
用于提取access_token并检查cookie/signed_request中的sig的实用程序
我找不到任何关于如何使用这个"实用程序"的文档.你能指点我一些文档甚至更好,给我一个关于它如何与Ruby/Sinatra一起使用的例子?
ruby sinatra facebook-iframe facebook-page facebook-graph-api
由于我在上一个问题上没有得到预期的答案,我会尝试简化和缩小我的问题:
如何构建一个使用AJAX(无提交按钮)来调用某个控制器的show动作的下拉菜单?
给出以下内容:
模型关联是类别HABTM项目,因此下拉菜单包含所有类别名称.
应该实现下拉菜单的视图部分.下拉菜单下方是一个项目列表,应根据下拉菜单中的选择进行更改:
<!-- placeholder for AJAX dropdown menu -->
<!-- list of projects related to categories chosen by the select tag -->
<ul class="projects">
<% @projects.each do |_project| %>
<li>
<%= link_to(_project.name, _project) %>
</li>
<% end %>
</ul>
Run Code Online (Sandbox Code Playgroud)
具有应该调用的show-action 的Categories控制器:
class CategoriesController < ApplicationController
def show
# params[:id] should be the choice the user made in the dropdown menu
@category = Category.find(params[:id])
@projects = @category.projects.find(:all)
respond_to do …Run Code Online (Sandbox Code Playgroud) 我有一个id为"foo"的文本域,有时存在,有时不存在.如果它存在,我想填写一定的价值.
你是如何通过使用RJS(在Rails 2.2中)这样做的?
我尝试过这个并不起作用:
if page[:foo]
page[:foo].value = "bar"
end
Run Code Online (Sandbox Code Playgroud)
我明白了
TypeError:Null如果文本字段不存在,则为Value
.
我正在使用带有Ruby 1.9.2的Sinatra 1.2.0(我需要在这个项目中使用这个版本的Ruby)并且我不知道为什么我一直得到这个SyntaxError.我在index.erb中使用以下内容时可以重现此错误:
<% @status = "foo" %>
The case is: <br />
<% case @status %>
<% when "foo" %>
It's a FOO!
<% when "bar" %>
It's a BAR!
<% else %>
It's something else...!
<% end %>
Run Code Online (Sandbox Code Playgroud)
错误:
SyntaxError at /
/Users/foo/Workspace/sinatra_case_test/views/index.erb:4: syntax error, unexpected tIVAR, expecting keyword_when ; case @status ; @_out_buf.concat "\n " ^
/Users/foo/Workspace/sinatra_case_test/views/index.erb:5: syntax error, unexpected keyword_when, expecting keyword_end ; when "foo" ; @_out_buf.concat "\n …Run Code Online (Sandbox Code Playgroud) 我的应用程序中的下拉菜单(由select_tag构建)应在用户更改下拉菜单中的值时立即调用filter-category-action并点击"Go"按钮.
现在我想摆脱'Go'按钮并让观察者(observe_field?)在用户更改下拉菜单中的值时立即调用filter-category-action.
下面你看到我写的代码.它使用'Go'-Button工作,但只是更改下拉菜单中的值不起作用.我的observe_category_select-helper出了什么问题?
视图 - 部分与下拉菜单和项目列表
<!-- drop down menu -->
<% form_tag(filter_category_path(:id), :method => :post, :class => 'categories') do %>
<label>Categories</label>
<%= select_tag(:category, options_for_select(Category.all.map {|category| [category.name, category.id]}, @category_id)) %>
<!-- i would like to get rid of this button -->
<%= submit_tag "Go" %>
<% end %>
<!-- list of projects related to categories chosen in drop down menu -->
<ul class="projects">
<% @projects.each do |_project| %>
<li>
<%= link_to(_project.name, _project) %>
</li>
<% end %>
</ul>
<%= observe_category_select …Run Code Online (Sandbox Code Playgroud) 我买了一个Waterrower,它有一个S4 性能监视器,背面有一个微型 USB 连接器,我认为能够获取来自 S4 的数据并用它做一些很好的事情会很好。
我确实知道一些 Ruby,但我一点也不喜欢与硬件交谈。我确实在 Github 上找到了Lars Kanis的libusb Ruby 绑定,并使用了它:
2.1.0 :001 > require "libusb"
=> true
2.1.0 :002 > usb = LIBUSB::Context.new
=> #<LIBUSB::Context:0x000001011451c0 @ctx=#<FFI::Pointer address=0x000001032788b0>, @on_pollfd_added=nil, @on_pollfd_removed=nil, @hotplug_callbacks={}>
2.1.0 :003 > usb.devices
=> [#<LIBUSB::Device 20/9 04d8:000a Microchip Technology Inc. CDC RS-232: WR-S4.2 ? (Comm (00,00))>, #<LIBUSB::Device 20/8 054c:0243 Sony Storage Media 2A08080530914 (MassStorage SCSI Bulk-Only)>, #<LIBUSB::Device 20/1 05ac:025a Apple Inc. Apple Internal Keyboard / Trackpad ? (HID …Run Code Online (Sandbox Code Playgroud) "位置"类(表示数据库表位置)的ActiveRecord对象具有属性"url","lat"(纬度)和"lng"(经度).
此模型上的Lat-lng组合应该是唯一的.问题是,数据库中有很多位置对象具有重复的lat-lng组合.
在执行以下操作时我需要帮助
由于这是一次性操作,因此欢迎SQL(MySQL 5.1兼容)中的解决方案.
ruby ×7
javascript ×4
rjs ×3
sinatra ×2
activerecord ×1
dom ×1
erb ×1
imagemagick ×1
libusb ×1
macos ×1
mysql ×1
nokogiri ×1
osx-yosemite ×1
parsing ×1
php ×1
prototype ×1
rack ×1
richtextbox ×1
rmagick ×1
sql ×1
tinymce ×1
usb ×1
yui ×1